Don Stewart wrote:
> I think we don't see as much metaprogramming because of other language
> features -- laziness, operator syntax, and type classes -- make a bunch
> of common designs work without needing metaprogramming.
>While true, there are also 2 other reasons for meta-programmers are not
all over Haskell:
1. efficiency nuts are already using C++ templates and don't see why
they would switch,
2. people who care about types use a typed meta-language (like
metaocaml) instead of an untyped template layer atop a (fantastic!)
typed language.
Actually, people in the #2 camp (like me) are keeping a close eye on
dependently-typed languages (like Idris [1]) where partial evaluation
has been show to be particularly easy and effective. I am eagerly (!)
awaiting similar results from the Agda [2] camp.
I believe the world really is ready for a typed metaprogramming
language. I know I am. And I would really like it if Haskell were that
language.
Jacques
[1] http://www.cs.st-andrews.ac.uk/~eb/Idris/
[2] http://wiki.portal.chalmers.se/agda/