ACM Home Page
Please provide us with feedback. Feedback
A practical tool kit for making portable compilers
Full text PdfPdf (792 KB)
Source
Communications of the ACM archive
Volume 26 ,  Issue 9  (September 1983) table of contents
Pages: 654 - 660  
Year of Publication: 1983
ISSN:0001-0782
Authors
Andrew S. Tanenbaum  Vrije Univ., Amsterdam, The Netherlands
Hans van Staveren  Vrije Univ., Amsterdam, The Netherlands
E. G. Keizer  Vrije Univ., Amsterdam, The Netherlands
Johan W. Stevenson  Vrije Univ., Amsterdam, The Netherlands
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 28,   Citation Count: 18
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/358172.358182
What is a DOI?

ABSTRACT

The Amsterdam Compiler Kit is an integrated collection of programs designed to simplify the task of producing portable (cross) compilers and interpreters. For each language to be compiled, a program (called a front end) must be written to translate the source program into a common intermediate code. This intermediate code can be optimized and then either directly interpreted or translated to the assembly language of the desired target machine. The paper describes the various pieces of the tool kit in some detail, as well as discussing the overall strategy.


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
Graham, S.L. Table-driven code generation. Computer 13, 8 (August 1980), 25-34. A discussion of systematic ways to do code generation, in particular, the idea of having a table with templates that match parts of the parse tree and convert them into machine instructions.
 
2
Haddon, B.K. and Waite, W.M. Experience with the universal intermediate language Janus. Software Practice and Experience 8, 5 (Sept.- Oct. 1978), 601-616. An intermediate language for use with Algol 68, Pascal, etc. is described. The paper discusses some of the problems encountered and how they were dealt with.
3
 
4
Leverett, B.W, Cattell, R.G.G., Hobbs, S.O., Newcomer, J.M., Reiner, A.H, Schatz, B.R., and Wulf, W.A. An overview of the productionquality compiler-compiler project. Computer 13, 8 (August 1980), 38- 49. PQCC is a system for building compilers similar in concept but different in details from the Amsterdam Compiler Kit. The paper describes the intermediate representations used and the code generation strategy.
5
 
6
Nori, K.V., Ammann, U., Jensen, K., and Nageli, H. The Pascal P compiler implementation notes. Eidgen. Tech. Hochschule, Zurich, 1975. A description of the original P-code machine, used to transport the Pascal-P compiler to new computers.
 
7
Steel, T.B., Jr. UNCOL:the myth and the fact. In Ann. Bey. Auto. Prog. Goodman, R. (Ed.), Vol. 2., (1960), 325-344. An introduction to the UNCOL idea by its originator.
 
8
Steel, T.B., lr. A first version of UNCOL. Proc. Western }oint Comp. Conf., (1961), 371-377. The first detailed proposal for an UNCOL. By current standards it is a primitive language, but it is interesting for its historical perspective.
9
 
10
Tauenbaum, A.S., Stevenson, J.W., Keizer, E.G., and van Staveren, H. Description of an experimental machine architecture for use with block structured languages, lnformatica Rapport 81, Vrije Universiteit, Amsterdam, 1983. The defining document for EM.
11

CITED BY  18

Collaborative Colleagues:
Andrew S. Tanenbaum: colleagues
Hans van Staveren: colleagues
E. G. Keizer: colleagues
Johan W. Stevenson: colleagues