Hi again, I think I found the root cause of my problem.
Since clojure compiles namespaces as they are encountered it depends on when c.c.def is compiled. If it's compiled first, it's anonymous function is created in clojure.core. Hence you get the clojure/core$clojure_contrib_def_... .class file. However if you first compile another namespace which happens to require (or use) c.c.def the anonymous function is created in that namespace. In my case this happened to be c.c.types. So I got clojure/contrib/types$clojure_contrib_def_... instead of the clojure/core$clojure_contrib_def_.... This is ugly at best. I tried to somehow reset the namespace to clojure.core, but to no avail. I don't know the Compiler enough. Nevertheless I attached the patch to make the anonymous function show where it comes from. Sincerely Meikel
ns-issue.diff
Description: Binary data
smime.p7s
Description: S/MIME cryptographic signature