Metacomputation-based Compiler Architecture. Harrison, W. & Kamin, S. In 5th International Conference on the Mathematics of Program Construction, Ponte de Lima, Portugal, volume 1837, of Lecture Notes in Computer Science, pages 213–229, 2000. Springer-Verlag.
Metacomputation-based Compiler Architecture [pdf]Paper  abstract   bibtex   
This paper presents a modular and extensible style of language specification based on metacomputations. This style uses two monads to factor the static and dynamic parts of the specification, thereby staging the specification and achieving strong binding-time separation. Because metacomputations are defined in terms of monads, they can be constructed modularly and extensibly using monad transformers. Consequently, metacomputation-style specifications are modular and extensible. A number of language constructs are specified: expressions, control-flow, imperative features, block structure, and higher-order functions and recursive bindings. Because of the strong binding-time separation, metacomputation-style specification lends itself to semantics-directed compilation, which we demonstrate by creating a modular compiler for a block-structured imperative, while language.

Downloads: 0