The Tiger language is a small language with nested functions, record values with implicit pointers, arrays, integer and string variables, and a few simple structured control constructs.In addition, we have added exceptions to the basic Tiger language. Full source code and documentation can be found at the C-- website, or in the Quick C-- CVS repository under frontends/tiger.
| symbol.nw | Symbols and symbol tables. |
| ast.nw | Abstract Syntax Trees. |
| environment.nw | Environments. |
| semantics.nw | Semantic analysis. |
| tree.nw | The intermediate representation. |
| translate.nw | Translates ASTs to intermediate representation. |
| frame.nw | Stack frames. |
| codegen.nw | Generates C-- code. |
| gc.nw | Garbage collector. |
| stdlib.nw | Tiger standard library functions. |
| runtime.nw | Startup code. |
| driver.nw | The compiler driver. |
| error.nw | Error reporting. |
| option.nw | Command line options. |
| parser.nw | Parser and scanner. |
| canonical.nw | Linearizes expression trees. |