Defaults and Block Structure in the MAD/I Language
Abstract
The paper describes the default and block structure mechanisms of MAD/I, a PL/I-like language, and the interaction of these mechanisms with the three types of MAD/I declarations: explicit declarations, default declarations, and conditional declarations. MAD/I allows the programmer extraordinary control over the default assignment of data types to variables, and also allows the programmer more than usual control over the scope of variable names in block structure. The interaction of these two facilities can make the handling of declaration information a difficult problem. The paper outlines an algorithm in which this information is processed 'on the fly' in the first pass of the compiler over the source program, and then the symbol table is processed to assign defaults and allocate storage. A simple second pass over a transformed version of the source text resolves the scope and interpretation of variable names.
Document Details
- Document Type
- Technical Report
- Publication Date
- Jul 01, 1970
- Accession Number
- AD0715503
Entities
People
- Allen Springer
Organizations
- University of Michigan