A Compiler for Lazy ML

Lennart Augustsson. A Compiler for Lazy ML. In Proceedings of the ACM Symposium on LISP and Functional Programming. LFP '84, pages 218-227, Association for Computing Machinery, New York, NY, USA, 1984. [doi]

Abstract

LML is a strongly typed, statically scoped functional Language with Lazy evaluation. It is compiled trough a number of program transformations which makes the code generation easier. Code is generated in two steps, first code for an abstract graph manipulation machine, the G-machine. From this code machine code is generated. Some benchmark tests are also presented.