4 ms·
> The guy he cites who declared macros evil is obviously not a part of 'mainstream' Clojure culture I think Yegge was referring to Christophe Grand's talk on D
by bitsai 15y ago
> The guy he cites who declared macros evil is obviously not a part of 'mainstream' Clojure culture
I think Yegge was referring to Christophe Grand's talk on DSL's and macros. Grand has written several notable Clojure libraries, so I do consider him part of 'mainstream' Clojure culture. But he didn't say "macros are dangerous and you should never use them". Quoting Phil Hagelberg's response in the linked discussion:
The talk I saw was about how functions are generally more
composable than macros, so they should be the first tool
you reach for. I think it was more directed at folks who
come to lisp and are drunk with the power of macros.
(Assuming it was this talk: http://clojure.blip.tv/file/4522250/)
Towards the end of the talk, Grand discusses how macros can be useful for optimizing or adding syntactic sugar to DSL's.
- tomfaulhaber 15y agoThis is not a "Clojure thing." The advice to noobs not to go hog wild with macros is common among experienced Lisp programmers in all dialects. Paul Graham himself refers to it in _On Lisp_: Chapter 8 is titled "When to Use Macros" and the first section is "When Nothing Else Will Do."