The
Tiger in Stratego is divided into several
compiler packages, in order to make it easier to distribute only parts of the compiler and to add new components.
Languages
- Tiger Front -- syntax, desugarer, pretty-printer, typechecker, interpreter for Tiger programs
- Tiger Xmpl -- example Tiger programs
- IR -- syntax, signature, pretty-printing, and canonicalization of intermediate representation programs
- ASM -- signature, pretty-printer, register allocation for assembly programs
Translations
Optimizations
- Tiger Opt -- source-to-source transformations on Tiger programs
Extensions
- Tiger XML -- extension of Tiger with concrete syntax for XML