Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mal implementation in Elm 0.18 ported to Elm 0.19 #450

Open
wants to merge 27 commits into
base: master
Choose a base branch
from

Conversation

Pancakem
Copy link

No description provided.

@Pancakem Pancakem closed this Sep 22, 2019
@kanaka
Copy link
Owner

kanaka commented Sep 25, 2019

@Pancakem did you intend to close this? Seems like there are some good improvements here. Perhaps you just closed it to fix the build/Travis issue?

@Pancakem
Copy link
Author

@Pancakem did you intend to close this? Seems like there are some good improvements here. Perhaps you just closed it to fix the build/Travis issue?

Yes, I closed it to fix issues.

@Pancakem Pancakem reopened this Sep 25, 2019
@kanaka
Copy link
Owner

kanaka commented Dec 2, 2019

Hi @Pancakem, Is this ready for merging? The Travis tests won't pass until the upstream docker hub image is updated. If it's passing for you locally, then I'll update the image so that Travis will pass too.

@Pancakem
Copy link
Author

Pancakem commented May 8, 2020

Hi @Pancakem, Is this ready for merging? The Travis tests won't pass until the upstream docker hub image is updated. If it's passing for you locally, then I'll update the image so that Travis will pass too.

Hello @kanaka. Finally got around to finishing this. Local tests pass.

@kanaka
Copy link
Owner

kanaka commented May 16, 2020

@Pancakem sorry for the slow reply. I just had a chance to look at this. I forgot that elm uses npm for installation so it doesn't actually require me to update the Docker image upstream. Looks like their are a few macro failures and the perf3 micro-benchmark which is timing out:

The build is at: https://travis-ci.org/github/kanaka/mal/jobs/684724080. Lines 1293-1314 show the macro failures and the timing out test is at line 3321

Once those issues are fixed then I will merge it.

@Pancakem
Copy link
Author

@Pancakem sorry for the slow reply. I just had a chance to look at this. I forgot that elm uses npm for installation so it doesn't actually require me to update the Docker image upstream. Looks like their are a few macro failures and the perf3 micro-benchmark which is timing out:

The build is at: https://travis-ci.org/github/kanaka/mal/jobs/684724080. Lines 1293-1314 show the macro failures and the timing out test is at line 3321

Once those issues are fixed then I will merge it.

Thank you. I will fix that.

@kanaka
Copy link
Owner

kanaka commented Dec 14, 2021

Hi @Pancakem I know it's been a long time but I was wondering if you've had any chance to look at this. The current elm implementation of mal in elm (0.18) has been broken for a while because the elm-0.18 Linux package was removed quite a while ago. If I can't find somebody to resurrect the elm build/impl, then I'll probably need to remove it from mal.

@c0deaddict since you are the original creator of the elm mal implementation, any interest in getting it working again with elm 0.19 if @Pancakem isn't able to?

@c0deaddict
Copy link

I can have a look at it, if @Pancakem doesn't have the time. That probably won't be sooner than February next year, a busy period is coming up and I'm currently focusing on getting the Advent of Code completed 😄

asarhaddon added a commit to asarhaddon/mal that referenced this pull request Feb 18, 2022
It was necessary to rename some ambiguous variables. Some more names
could probably be changed in order to reduce the diff with kanaka#450 (my
names were choosen in order to reduce the diff with master...)

Peek ideas from kanaka#450:
- sort imports
- skip a line between '->' or before 'else'
- no indentation after 'in'
- fix indentation when it was only intended to reduce diff
- remove some unneeded parenthesis
and
- if .. return True else False -> ...
@asarhaddon
Copy link
Contributor

Hello @Pancakem and @c0deaddict.
I am sorry but I have duplicated your efforts in #608.
Because of the variable renamings, there is a lot of noise in the diff, and merging is a pain.
Please tell me if I have forgotten something important, apply an automatic formatter to my last commit and send me the diff, or more generally improve the merge in any way.
Especially, someone with experience in this language would probably find a way to move the sources to 'src/', name them with a lowercase letter and/or name the module in each step file 'Main'. The tricks I have used in order to build are most probably more complex than necessary, especially the ugly test in bootstrap.js special-casing step A.
All tests pass on my machine, so maybe we should update the Docker image, merge now and postpone the style issues.

asarhaddon added a commit to asarhaddon/mal that referenced this pull request Feb 20, 2022
It was necessary to rename some ambiguous variables. Some more names
could probably be changed in order to reduce the diff with kanaka#450 (my
names were choosen in order to reduce the diff with master...)

Peek ideas from kanaka#450:
- sort imports
- skip a line between '->' or before 'else'
- no indentation after 'in'
- fix indentation when it was only intended to reduce diff
- remove some unneeded parenthesis
and
- if .. return True else False -> ...
asarhaddon added a commit to asarhaddon/mal that referenced this pull request Feb 20, 2022
Various trivial changes reducing the diff to kanaka#450.

Dockerfile: npm already depends on nodejs

Core.elm: change profile of deepEquals instead of uncurrying before
each call.
@c0deaddict
Copy link

Nice work @asarhaddon ! I glanced over your changes and they look good to me. I do have to admit that I haven't read or written Elm code for a few years, so i'm a bit rusty. I agree with you that the best way forward is to get your PR merged. The styling issues can be fixed later on, as a further improvement.

2lambda123 pushed a commit to 2lambda123/kanaka-mal that referenced this pull request Jan 19, 2024
Integrates 0.19.0 updates done at:
kanaka/mal#450 with updates to 0.19.1 such as
updating to 0.19.1 (with elm directly installed) and some Makefile
updates to make things build.

This still has a couple of runtime issues:
- macros that are defined using a quote or quasiquote at the top-level
  aren't evaluated the final time.
- the perf3 test times out (this may be related to the macros issue).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants