The compiler is the main product of the Tiger in Stratego project, which explores the use of program transformation techniques in Stratego, a language for program transformation. The purpose of the project is to illustrate program transformation in general and the use of Stratego in particular; the compiler is not intended as a production compiler.
The compiler consists of several compiler components that can be composed in various ways. The compiler architecture is such that it is easy to plug in new components.
The compiler components are distributed in several compiler packages. The separation into packages makes it easy to reuse parts of the compiler source tree in combination with other components.