| Loops in combinator-based compilers |
| Full text |
Pdf
(462 KB)
|
| Source
|
Annual Symposium on Principles of Programming Languages
archive
Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
table of contents
Austin, Texas
Pages: 190 - 196
Year of Publication: 1983
ISBN:0-89791-090-7
|
|
Author
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 9, Downloads (12 Months): 27, Citation Count: 5
|
|
|
ABSTRACT
In our paper [Wand 82a], we introduced a paradigm for compilation based on combinators. A program from a source language is translated (via a semantic definition) to trees of combinators; the tree is simplified (via associative and distributive laws) to a linear, assembly-language-like format: the "compiler writer's virtual machine" operates by simulating a reduction sequence of the simplified tree. The correctness of these transformations follows from general results about the λ-calculus. The code produced by such n generator is always tree-like. In this paper, the method is extended to produce target code with explicit loops. This is done by re-introducing variables into the terms of the target language in a restricted way, along with a structured binding operator.
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.
| |
1
|
{Barendregt 81} Barendregt, H. P. The Lambda Calculus: Its Syntax and Semantics, North-Holland, Amsterdam, 1981.
|
| |
2
|
|
| |
3
|
|
| |
4
|
|
 |
5
|
|
| |
6
|
{Thatcher et al. 81} Thatcher, J. W., Wagner, E. G., and Wright, J. B. "More on Advice on Structuring Compilers and Proving Them Correct" Theoret. Comp. Sci. 15 (1981), 223-250.
|
| |
7
|
{Turing 37} Turing, A. M. "The p-functions in λ-K-conversion" J. Symbolic Logic 2 (1937), 164.
|
| |
8
|
{Turner 79} Turner, D. A. "A New Implementation Technique for Applicative Languages" Software-Practice and Experience 9 (1979), 31-49.
|
| |
9
|
{Wand 80} Wand, M. "Different Advice on Structuring Compilers and Proving Them Correct", Indiana University Computer Science Department Technical Report No. 95 (September, 1980).
|
 |
10
|
|
 |
11
|
|
|