Haskell is a general purpose lazy [[functional programming language]]. The language is a grateful subject of [[program transformation]]. Program transformations play a prime role in GHC, the Glasgow Haskell Compiler. * Homepage: http://www.haskell.org * Definition: http://www.haskell.org/definition/ ---++ Haskell as Transformation Language Although it is not primarily aimed at program transformation, it has some features in common with program transformation languages, including [[pattern matching]]. Strengths * AlgebraicDataTypes * PatternMatching * Higher-order functional abstraction Weaknesses * No separation of rules and strategies * No first-class pattern matching Applications of Haskell to program transformation * GHC, the Glasgow Haskell Compiler, built by [[Simon Peyton Jones]] et al. is based on the paradigm of [[compilation by transformation]]. ---++ See Also * [[Template Haskell]] * FunctionalTransformationSystems