I can confirm this behavior. It's not the fault of the `ns`
macro, however. This works just fine:
user= (ns ^{:doc This is foo} foo)
nil
foo= (in-ns 'user)
#Namespace user
user= (meta (the-ns 'foo))
{:doc This is foo}
AOT-compilation appears to be the culprit (as usual).
Thank you for confirming this, Stuart. Hopefully this will be fixed someday.
On Tuesday, July 23, 2013 7:06:18 PM UTC+3, Stuart Sierra wrote:
I can confirm this behavior. It's not the fault of the `ns`
macro, however. This works just fine:
user= (ns ^{:doc This is foo} foo)
nil
As an aside from this, how problematic is AOT compilation? It seems to be
the source of many bugs (for example, my own
CLJ-1227http://dev.clojure.org/jira/browse/CLJ-1227).
Is there a list anywhere of things to watch out for when AOT compiling?
On 24 July 2013 04:06, Stuart Sierra
Example:
user= (meta (find-ns 'clojure.set))
nil
user= (meta (find-ns 'clojure.string))
nil
user= (meta (find-ns 'clojure.core))
{:doc Fundamental library of the Clojure language}
clojure.core is the only namespace that has metadata. Apparently because it
has metadata set differently