Lab 4: Symbol Tables

Lab Assigned Lab Due
(Start of class)
20 Mar 3 Apr

Abstract: The symbol table is the best example of a structure deserving global treatment in a compiler based on bottom-up parsing. In this homework, you will implement symbol-table processing for our Java-like language. This requires a traversal of the AST using the Visitor pattern and an optional implementation of a symbol-table manager.

The essential task performed here is to associate the declaration of a name to the relevant uses of that declared name.