ABSTRACT
The General Utility Language Processor (GULP for short) has to operate interactively in a small machine. Its design has to be radically different from compiler-compilers for general-purpose languages in batch-processing operating systems.1,2,3,5 Except for the processing of interrupts, the processing time is unimportant, provided there is a response from the system within a few seconds. Hence every effort was made to reduce storage requirements, even at the expense of processing time.
There are many sophisticated techniques which may be used in compiler-compilers; for example, checking grammars for ambiguity, procedures to put the syntax rules into canonical order4 and methods to optimize generated code. These are neglected in GULP because of the need to save storage space.
Mnemonics and familiar higher language forms are used wherever possible in the attempt to simplify the use of GULP and make it easier to learn.
- 1.R A BROOKER I R MacCALLUM D MORRIS J S ROHL The compiler compiler Annual Review in Automatic Programming Vol 3 1963 pp 1-53Google Scholar
- 2.S ROSEN A compiler-building system developed by Brooker and Morris Comm ACM Vol 7 July 1964 pp 403-414 Google ScholarDigital Library
- 3.P Z INGERMAN A syntax oriented translator Academic Press New York and London 1966Google Scholar
- 4.P Z INGERMAN A syntax oriented translator Academic Press New York and London 1966 pp 55-59Google Scholar
- 5.J H MATTHEWMAN Syntax-directed compilers Ph D Dissertation at the University of Cambridge November 1965Google Scholar
- 6.W M NEWMAN ASP-7 ring structure processor—version 2 Internal document Imperial College London March 1967Google Scholar
- 7.C A LANG J C GRAY ASP a ring-implemented associative structure package Comm ACM Vol 11 August 1968 Google ScholarDigital Library
- 8.D T ROSS The AED approach to generalized computer-aided design Proc ACM 22nd Nat Conference 1967 pp 367-385 Google ScholarDigital Library
- 9.M MINSKY Computation: finite and infinite machines Prentice Hall 1967 p 71 Google ScholarDigital Library
- 10.J W ALSOP A canonic translator MAC-TR-46 (Thesis) Project MAC MIT Nov 1967 Google ScholarDigital Library
- 11.D T ROSS The polyface package—an example of semantic package design MIT ESL Memo 9442-M-183 January 1967Google Scholar
- 12.W M NEWMAN A system for interactive graphical programming Proc SJCC 1968 pp 47-54Google Scholar
- 13.J C SHAW A designer's view of an experimental on-line computing system Proc FJCC 1964 p 455Google Scholar
- 14.R W FLOYD The syntax of programming languages IEEE Transactions on Electronic Computers EC-13 1964 p 346Google Scholar
- 15.E T IRONS The structure and use of the syntax-directed compiler Annual Review in Automatic Programming 3 207 1963Google Scholar
- 16.J FELDMANN D GRIES Translator writing systems Comm ACM Vol ll February 1968 pp 77-113 Google ScholarDigital Library
Index Terms
- GULP—A compiler-compiler for verbal and graphic languages
Recommendations
Compositional compiler construction
We describe an implementation of an Oberon0 compiler using the techniques proposed in the CoCoCo project. The compiler is constructed out of a collection of pre-compiled, statically type-checked language-definition fragments written in Haskell. Oberon0 ...
The Intel labs Haskell research compiler
Haskell '13The Glasgow Haskell Compiler (GHC) is a well supported optimizing compiler for the Haskell programming language, along with its own extensions to the language and libraries. Haskell's lazy semantics imposes a runtime model which is in general difficult ...
Comments