In this paper we describe a series of program transformations that are currently being implemented in the Glasgow Haskell Compiler. They are semantics preserving program transformations and therefore are perfectly suitable for incorporation in a compiler. We describe some of the transformations, how they interact and their impact on the time/space behaviour of some programs.
André Santos, Simon L. Peyton Jones