|
ABSTRACT
Using concepts from denotational semantics, we have produced a very simple compiler that can be used to compile standard programming languages and produces object code as efficient as that of production compilers. The compiler is based entirely on source-to-source transformations performed on programs that have been translated into an intermediate language resembling the lambda calculus. The output of the compiler, while still in the intermediate language, can be trivially translated into machine code for the target machine. The compilation by transformation strategy is simple: the goal is to remove any dependencies on the intermediate language semantics that the target machine cannot implement directly. Front-ends have been written for Pascal, BASIC, and Scheme and the compiler produces code for the MC68020 microprocessor.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
Boyle 84
|
James M. Boyle and Monagur N. Muralidharan. Program reusability through program transformation. in IEEE Transactions on, Software Engineering SE- 10(5):574-588, September 1984.
|
| |
Boyle 86
|
|
 |
Brooks 82
|
Rodney A. Brooks , Richard P. Gabriel , Guy L. Steele, Jr., An optimizing compiler for lexically scoped LISP, Proceedings of the 1982 SIGPLAN symposium on Compiler construction, p.261-275, June 23-25, 1982, Boston, Massachusetts, United States
|
| |
Feeley
|
M. Feeley and G. Lapalme. Closure generation based on viewing LAMBDA as EPSILON plus COMPILE. D~partement d'informatique et de recherche op~rationnelle (I.R.O.), Universit~ de MontrSal, P.O.B. 6128, Station A, Montreal, QuSbec, H3C3J7 (Canada).
|
| |
Johnsson 87
|
Thomas Johnsson. Lambda lifting: Transforming programs into recursire equations. In Compiling Lazy Functional Languages. PhD thesis, Chalmers University of Technology, 1987
|
| |
Kelsey 89
|
|
 |
Kranz 86
|
David Kranz , Norman Adams , Richard Kelsey , Jonathan Rees , Paul Hudak , James Philbin, ORBIT: an optimizing compiler for scheme, ACM SIGPLAN Notices, v.21 n.7, p.219-233, July 1986
|
| |
Lee 87
|
|
 |
Paulson 82
|
|
| |
Plotkin 75
|
G. D. Plotkin. Call-by-name, call-by-value and the A-calcuhs. in Theoretical Computer Science 1:125-159, 1975.
|
| |
Rees 84
|
Jonathan A. Rees, Norman I. Adams, and James R. Meehan. The T manual, fourth edition. Yale University Computer Science Department, January 1984.
|
| |
Standish 76
|
T. A. Standish, D. C. harriman, D. F. Kibler, and J. M. Neighbors. The Irvine program transformation catalogue Department of Information and Computer Science, University of California at Irvine, 1976.
|
| |
Steele 78
|
|
CITED BY 26
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Yasuhiko Minamide , Greg Morrisett , Robert Harper, Typed closure conversion, Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.271-283, January 21-24, 1996, St. Petersburg Beach, Florida, United States
|
|
|
Sheng Liang , Paul Hudak , Mark Jones, Monad transformers and modular interpreters, Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.333-343, January 23-25, 1995, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Daniel E. Stevenson , Margaret M. Fleck, Programming language support for digitized images or, the monsters in the closet, Proceedings of the Conference on Domain-Specific Languages on Conference on Domain-Specific Languages (DSL), 1997, p.21-21, October 15-17, 1997, Santa Barbara, California
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|