a.b$macros=> (ns a.core$macros)
nil
a.core$macros=> (defmacro hell [x] `(+ x 2))
#'a.core$macros/hell
a.core$macros=> (macroexpand '(a.core/hell 1))
(a.core/hell 1)
a.core$macros=> (ns foo.core$macros)
nil
foo.core$macros=> (defmacro hell [x] `(+ x 2))
#'foo.core$macros/hell
foo.core$macros=> (macroexpand '(foo.core/hell 1))
(js* "(~{} + ~{})" foo.core/x 2)
a.core
and foo.core
are different? why?
@jiyinyiyong because the macro only gets compiled in $macro suffixed namespaces, http://blog.fikesfarm.com/posts/2015-09-07-messing-with-macros-at-the-repl.html
ah sorry, they are both $macros. I'm feverish today, didnt read well.
yeah, it's very strange to me...
you get the same result from Planck?
didn't install planck, so didn't try
Not reproducible in Planck https://github.com/anmonteiro/lumo/issues/301#issuecomment-339968902
Probably a simple compilation bug
Upstream in the compiler