First of all, this might very well be a ramble without much sense, but please bear with me. Secondly, I’m writing this first and foremost not as an application programmer.
Having programmed in the crud-application business some twenty years professionally, the last couple of them in Clojure, there are (at least) two things (that might be related) that puzzle me: 1) The power of macros I see, and acknowledge that eg the go-macro core.async is a wonderful piece of work, and that it’s really cool that it could be done in a library. But as an application programmer, I really don’t care if it’s a macro or a language feature, and I couldn’t really see myself investing that amount of time (nor would I have the skills to do so if I had the time) to solve my concurrency problems in such a general manner. 2) The creating of a DSL for your problem domain, and then write a custom compiler to solve your problem In my (most optimistic view) every program that I write is somewhat an internal DSL, built up of domain-specific functions, glued together with Clojure. But I don’t feel that this is very specific to how I program in Clojure vs other languages. So what I’d really like to achieve with this post is two things 1) Arguments ranging from “Oh, you should look at it from this angle” to “That’s how I feel too” to “You’re totally wrong, because…” 2) Pointers to blogs/articles/codebases which shows how applications written either with extensive use of macros or by implementing an internal DSL (and compiler) are significantly quicker to develop than their brute-force alternatives. You might consider this as a first effort to create a presentation around the subject :) Erik. -- 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.