TECHNIQUES FOR AUTOMATING THE CONSTRUCTION OF TRANSLATORS FOR PROGRAMMING LANGUAGES,
CALIFORNIA UNIV BERKELEY ELECTRONICS RESEARCH LAB
Pagination or Media Count:
Formal procedures are summarized for constructing translators whereby a computer is used to generate substantial portions of the translators, the latter being termed symbolic machine language assemblers, macro expanders, or compilers. The translators all perform the task of translating programs written in one language into equivalent programs written in another. BASIC BOOTSTRAP PROCEDURE The first translators were written in an available machine language and were mostly symbolic machine language translators assemblers. Application of the bootstrap procedure was the writing in symbolic language, including the translator itself, of programs, once a symbolic machine language translator became available for a particular machine. The bootstrap procedure has the property that each translator can translate its own description into itself since it is described by a language which is a subset of the language it translates. The NELIAC, compiler for the Remington Rand M460 is a selfcompiling compiler. MULTIPLE BOOTSTRAP PROCEDURES These procedures involve translators producing object programs for machines other than the machine that performed the translation. As an example of the use of an intermediate language and multiple bootstrap procedure, there is cited the translator constructed for the FORTRAN language and the IBM-7090 and CDC-3600 computers by Mendicino, Storch, and Sutherland at the Lawrence Radiation Lab. of the University of California.