News for hackers. Stuff that matters.
Re:Dialects of Lisp by ema on Friday February 22, 2013 @05:29PM (#5267327)
Clojure is currently my favorite language, partly for the pragmatic choices it made, but these pragmatic choices will limit its continued use.

Hygienic macros often prevent one from shooting oneself into the foot, but they prevent also some truly elegant code. Having lists and vectors with a common interface is cool, but that the semantics of conj is different for both is annoying. Easy java interop is worth a lot, but it prevents call/cc.

It's probable that i will gladly use Clojure for the next 10, maybe even 20 years, but it won't be the programming language my grandchildren will ask me to shut up about.

Re:Dialects of Lisp by asynchrony on Friday February 22, 2013 @10:42PM (#5268449)
Hygienic macros prevent accidental symbol capture. They don't prevent intentional symbol capture. You may be thinking of the limitations of pattern based macros, but many Scheme systems provide hygienic procedural macros.
Re:Dialects of Lisp by Tyr42 on Friday February 22, 2013 @08:08PM (#5268011)
I am curious, what do you think hygienic macros break? I'm a fan of Racket, and I haven't yet found anything that it's macros can't do.
Re:Dialects of Lisp by nbouscal on Saturday February 23, 2013 @02:10AM (#5268860)
I'm still too new to Lisp to answer this question, but I have seen the book Let Over Lambda recommended as having answers to that and similar questions.