The denotational semantics of programming languages
Communications of the ACM
Semantics-Directed Compiler Generation: Proceedings
Semantics-Directed Compiler Generation: Proceedings
A Theory of Programming Language Semantics
A Theory of Programming Language Semantics
Compiler Generation from Formal Definition of Programming Languages: A Survey
Proceedings of the International Colloquium on Formalization of Programming Concepts
From standard to implementation denotational semantics
Semantics-Directed Compiler Generation, Proceedings of a Workshop
A semantic comparison of LISP and SCHEME
LFP '80 Proceedings of the 1980 ACM conference on LISP and functional programming
Rabbit: A Compiler for Scheme
Mathematical Theory of Computation
Mathematical Theory of Computation
A realistic compiler generator based on high-level semantics: another progress report
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Incremental dynamic semantics for language-based programming environments
ACM Transactions on Programming Languages and Systems (TOPLAS)
On the use of LISP in implementing denotational semantics
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Control Flow Aspects of Semantics-Directed Compiling
ACM Transactions on Programming Languages and Systems (TOPLAS)
Compiler prototyping using formal semantics
SIGPLAN '84 Proceedings of the 1984 SIGPLAN symposium on Compiler construction
An approach to incremental compilation
SIGPLAN '84 Proceedings of the 1984 SIGPLAN symposium on Compiler construction
SIGPLAN '84 Proceedings of the 1984 SIGPLAN symposium on Compiler construction
Direct implementation of compiler specifications or the pascal p-code compiler revisited
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
The scheme 311 compiler an exercise in denotational semantics
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
A survey of semantic description frameworks for programming languages
ACM SIGPLAN Notices
Hi-index | 0.00 |
Compiler generation based on formal semantics has received considerable attention in recent years from a number of semanticists. Compiler writers, on the other hand, know relatively little about these efforts. This paper tries to remedy this situation by discussing our experimentation with the Semantics Implementation System (SIS) of Peter Mosses. SIS allows the user to generate a complete compiler from a formal specification of the syntax and semantics of a programming language. In particular, the translator component of a compiler is obtained by directly implementing a denotational semantics. Consequently, a compiler is expressed as a higher order function. A program is compiled by formally applying the compiler to a tree representation of the program and simplifying this application. The experimentation with SIS indicates that compiler generation based on denotational semantics is feasible, though not yet viable. We argue that SIS constitutes an important first step toward the automatic construction of provably correct, complete, and reasonably efficient compilers from formal syntactic and semantic specifications.