-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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: error reporting, procedural env_set, native macro? #607
Conversation
elm fails because the Docker image needs to be updated (#608), but Types.elm suggests that Core.elm/apply accepts macros. |
I have rebased on #592 because rebasing was a nightmare. |
This change requires that the apply core function accepts macros and functions indifferently, update guide and tests accordingly.
This improves readability because the return value was only a trick to shorten `def!` and `defmacro!` and was ignored everywhere else. As a side effect, this probably improves efficiency, as `let*` is the most frequent caller.
Looks good. Definitely good to have (apply macro ...) working for all implementations. Regarding the mal error checking, I've been torn between adding those or keeping the mal implementation as concise as possible. There are pedagogical reasons for both approaches. But I think I prefer error checking now. |
Hello.
This merge request contains 3 commits implementing three ideas, and a backport from #592. The suggestions are interconnected, so a single merge request is convenient for now to start discussion and list implementations for which
apply
refuses macros.