Date: Fri, 16 Sep 2005 23:33:46 +0200 From: Tomasz Zielonka <tomasz.zielonka@gmail.com>
On Fri, Sep 16, 2005 at 05:40:04PM +0100, Glynn Clements wrote:
Every other language (including Haskell) tends to have the problem that eventually you will encounter a situation where the language's own worldview gets in the way.
Are you sure that lisp's worldview never gets in the way?
Or, to put it another way: if Haskell is so flexible, why do we need Template Haskell?
It's nice to have Template Haskell, but saying that we need it is a bit of an overstatement. In the GHC Survey 2005 only 9% of people said it's essential. Well, OK, I was one of them, but I think you know what I mean.
I can't imagine a "Template Lisp"; it would just be Lisp.
The power of lisp macros is often overrated. I remember a long discussion crossposted on comp.lang.lisp an comp.lang.functional. The lisp advocates gave examples for how macros allow to do things supposedly unavailable in other languages. Surprisingly, most of these things were equally easy to do with higher-order functions and closures in Haskell.
But were they as efficient? The beauty of macros is that a lot of things can be done with no run-time overhead at all. Not that I'm taking a stand on the Haskell-vs-Lisp argument; I think everyone should learn both languages. Mike