[Haskell-cafe] Haskell-Cafe Info Page
dons at galois.com
Sat May 17 15:16:30 EDT 2008
> On 2008 May 17, at 14:52, D. Gregor wrote:
> Common Lisp is a multiparadigm, general purpose programming language
> that supports imperative, functional, and object-oriented programming
> paradigms. Haskell is purely functional. Is this a reason why there is
> not macro feature in Haskell? I feel the object-oriented paradigm of CL
> and Scheme is the reason for the macro feature in these two languages.
> If it's not, then what does the macro feature provide, and why isn't it
> in Haskell?
> Macros in Lisp have less to do with functional vs. non-functional than
> with programs and data having precisely the same form (s-expressions).
> There is a macro facility of the kind you're thinking of in Haskell
> (Template Haskell), but you have to work with abstract syntax tables which
> look nothing like the original code.
Also, laziness is used for many of the coding jobs you might use macros
for. So there's less need for macros.
More information about the Haskell-Cafe