Chapter 8: Symbol Tables and Declaration Processing


Getting Started

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 of this assginment is to associate the declaration of a name to the relevant uses of that declared name.