Skip to content

Conversation

@c42f
Copy link
Collaborator

@c42f c42f commented Jun 10, 2019

I arranged the tests into testsets, and noticed that this exposed some points of confusion regarding differences between clojure and julia. Document that we just do things the julia way.

  • Make defmacro based macros able to use the esc function for julia-style hygiene
  • Document that defn works the julia way to define named functions (which may be closures in local scopes).

Also remove the @lisp macro to reduce API surface area. It just does exactly the same thing as @lisp_str but is less convenient.

c42f added 2 commits June 10, 2019 12:59
Arrange tests into testsets. In the process this exposed two scoping
issues:

* defn produces function expressions which are const bindings at global
  scope, or named closures in local scope. Document this.

* Julia macros are hygenic by default and clojure macros seem to be the
  opposite. Make it possible to use `esc` in macros, and document+test
  that we take the Julia convention
These have exactly the same functionality, and the string macro is more
convenient.
@swadey swadey merged commit f22171a into master Jun 10, 2019
@c42f c42f deleted the cjf/api-cleanup branch June 11, 2019 00:18
@c42f
Copy link
Collaborator Author

c42f commented Jun 11, 2019

Thanks.

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.

3 participants