http://www.haskell.org/haskellwiki/Template_Haskell
Умеет он типобезопасное метапрограммирование. Насколько я с ним разобрался, схема такая же, как у Лиспа: идёт разделение на время работы (run-time) и время компиляции (compile-time), и во время компиляции можно делать многое из того, что и во время работы.
Несколько примеров:
http://www.haskell.org/ghc/docs/latest/ ... skell.html
Вообще игрушка очень даже интересная, но пока ещё не полностью реализованная.