ACM Home Page
Please provide us with feedback. Feedback
Loops in combinator-based compilers
Full text PdfPdf (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
Mitchell Wand  Indiana University, Bloomington, Indiana
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 9,   Downloads (12 Months): 27,   Citation Count: 5
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/567067.567086
What is a DOI?

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