> At some point in this process, Clojure needs to know which foo you're > talking about. It can't retrieve the var associated with foo without > knowing which namespace it's in. That determination can either be > explicit or it can be made via the current namespace (*ns*), but it > has to be made somehow.
Years of using C++ namespaces have rotted my brain, but I think the "surprise" here was that (load-file) uses the current namespace from the run-time environment, rather than the compile-time environment. To my way of thinking, anything appearing beneath the (ns whatever) should operate in that namespace. As long as no one cares if I muck with *ns*, I can make it work the way I want. Thanks for pointing out that namespaces revert at the end of a load. Clearly matches observed behavior, but I hadn't thought about it before. Paul --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---