Thanks to the community for a wondrous programming environment. I discovered SICP last year, and fell in love with the idea of lisp. But I've come to a point where I think I need practice on moderately sized projects before more reading will help.
When starting on almost any moderately scoped effort, I quickly run into a class of problems which I think may be a fit for macros, but I want to understand what is the idiomatic way to approach them in clojure. Most of my professional experience is in .NET, and that is probably coloring my thought patterns a bit. In that context, I often use reflection scans and type metadata to configure infrastructural bits and dry things up. Instead of having to explicitly register components in the more dynamic areas of my app, I use conventions to select components to register from the metadata I have about my code. I can imagine using macros in clojure to accumulate metadata about my declarations so that I can query them at runtime. For example, maybe a "defendpoint" macro that sets up a handler AND adds it to the routing table (or more directly an "endpoint map" which I then use to make routing decisions among other things). Admittedly, something about the sound of the phrase "it's just data" tells me I'm sniffin up the wrong tree here. But I don't know how to turn that nagging feeling into working code. Is this a reasonable use of the macro? What about doing the registration at macro-expansion time vs emitting runtime code to do it? How should one approach the problems space otherwise? Thanks for your time. -- -- 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/groups/opt_out.