for all its beauty, clojure is losing its culture fast! You can already see Design Patterns being shoehorned on top of it, Java programmers will embrace it and extend it in earnest.
A neat hack to get something working quickly, but very unlispy. I can't even make sense of the AUTO-PROXY macro. A syntax barf mixed with a gratuitous breaking of LET. Also note that Rich Hickey decided to use the proxy design pattern to interop with Java, instead of doing all business with Java through FFIs; in a sense, Clojure's type system is embedded in Java.
This is a minor aesthetic nitpick from a concerned Lisper, mostly for selfish reasons. My thinking goes: "Today I have Common Lisp for my projects and I am happy with it. But tomorrow if I need Clojure, I hope to find it in a sane, Lispy world. I don't want to learn Java so please don't make me" ;-)
For a far more alarmist polemic, albeit a satirical one, see this:
I don't think you understand Clojure as well as you think you do. Java libraries often expect interfaces to be passed in as a parameter, and Clojure proxies are just a way of generating anonymous interfaces. This is not the de facto method for Java interop, it's just a simple means of creating the IFactoryFactory behemoths that Java tends to expect. It's practical, clean, and useful. I honestly don't understand what the nature of your objection is.
http://www.brool.com/index.php/snippet-automatic-proxy-creat...
A neat hack to get something working quickly, but very unlispy. I can't even make sense of the AUTO-PROXY macro. A syntax barf mixed with a gratuitous breaking of LET. Also note that Rich Hickey decided to use the proxy design pattern to interop with Java, instead of doing all business with Java through FFIs; in a sense, Clojure's type system is embedded in Java.
http://clojure.org/java_interop#toc25
This is a minor aesthetic nitpick from a concerned Lisper, mostly for selfish reasons. My thinking goes: "Today I have Common Lisp for my projects and I am happy with it. But tomorrow if I need Clojure, I hope to find it in a sane, Lispy world. I don't want to learn Java so please don't make me" ;-)
For a far more alarmist polemic, albeit a satirical one, see this:
http://jng.imagine27.com/articles/2009-08-19-011225_clojure_...