A Transformation-Based Optimiser for Haskell

Simon L. Peyton Jones, André L. M. Santos. A Transformation-Based Optimiser for Haskell. Science of Computer Programming, 32(1-3):3-47, 1998. [doi]


Many compilers do some of their work by means of correctness-preserving, and hopefully performance-improving, program transformations. The Glasgow Haskell Compiler (GHC) takes this idea of “compilation by transformation” as its war-cry, trying to express as much as possible of the compilation process in the form of program transformations.

This paper reports on our practical experience of the transformational approach to compilation, in the context of a substantial compiler.