An Intermediate Form for STApL Programs

This document describes the intermediate representation that your compilers will use for STApL programs. The scheme we will use is based on the idea of syntax trees. Therefore, much of this document will be concerned with the structure of trees for STApL programs. Syntax trees typically include some pointers into the compiler's symbol table. Accordingly, this document also includes a partial specification of a symbol table organization for a STApL compiler. In fact, since the syntax trees depend upon the symbol table, we will begin with a summary of the organization of the symbol table.
Computer Science 434
Department of Computer Science
Williams College