Hi all, First off, clojure is great. I've been playing with it off and on for a few months now, and am really impressed.
While using debug-repl I noted a minor oddity. This is just an example; not having a real problem with that package itself. user=> (require 'clojure.contrib.debug) nil user=> (clojure.contrib.debug/debug-repl) java.lang.Exception: Unable to resolve symbol: debug-repl in this context (NO_SOURCE_FILE:58) debug-repl is a macro, and (clojure.contrib.debug/debug-repl) expands first to (debug-repl nil). The above works fine after a (use 'clojure.contrib.debug) in place of the require. I'm guessing the expansion happens in the user namespace, and as a consequence the symbol "debug-repl" in the expansion can't be found. Working around this is easy enough, but I am now curious about the impact of this behavior on macro design. Would it be generally safe to say that it's good design to qualify symbols with namespaces in macros? That is, when you expect them to expand to a specific var. Or am I missing some finer details? As an aside, I'd also like to mention that I was originally working with this in code, not at the repl. And instead of NO_SOURCE_FILE:58, it gave me my-file.clj:58 even though the line referred to is line 58 in the debug.clj file. Very confusing! Ryan Twitchell -- 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 Note that posts from new members are moderated - please be patient with your first post. 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