Pettersson, M. (1996). A Compiler for Natural Semantics. Technical Report LiTH-IDA-R-96-05, Department of Computer and Information Science, Linköping University, Sweden. (bibtex),
Abstract: Natural semantics is a formalism used for specifying both semantics and implementations of programming languages. Until recently, no practical implementation of the formalism existed. We have defined the Relational Meta-Language, RML, as an executable specification language for natural semantics. After a brief outline of the language, we describe the compilation strategy used by our rml2c compiler: transformations are applied to minimize non-determinism, and a continuation-passing style form is produced and simplified. Finally the CPS is emitted as low-level C code, using an efficient technique for implementing tailcalls. We also present performance measurements that support our choice of compilation strategy.
CS Dept TR Overview