Compiler's Symbol Table
Real-life example of an environment
- Used for translation of source program into compiled code.
- One entry for each identifier in the program
- Data type.
- Mode of usage (variable, constant, parameter).
- Relative location in run-time store.
- Resolution of name conflicts
- Different symbol table for each block.
- Build table as single stack
Incremented and decremented upon block entry and exit.
- Compile-time object (Pascal, C, C++),
- Run-time object (Lisp, Smalltalk).
Author: Wolfgang Schreiner
Last Modification: November 18, 1997