The reason you can't just call `(mk-rec "A" "ns" [a b c])` is that your `mk-rec` is a function, and `a`, `b`, and `c` are undefined. To have them interpretted as symbols, you'd either have to explicitly use `['a 'b 'c]`, or write `mk-rec` as a macro (as Lee points towards).
I was able to get a macro that does _almost_ what you want, but wasn't quite able to get the namespacing right (at least cleanly). If you need some reading on macros, I really enjoyed the Joy of Clojure's presentation. The [Clojure for the Brave and True treatment](http://www.braveclojure.com/writing-macros/) seems good, but glimpsing through I found there were a couple of little idioms/tricks that were missing that would have been nice to see. Still a good place to start though probably. Chris -- 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 --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.