The Tiger Compiler project is a C++ implementation of a Tiger compiler. The Tiger language is described by Andrew Appel in his "Modern Compiler Implementation" books, and constitutes an important project in the EPITA curriculum. The needed material is referenced in the Tiger Links, in particular assignments (http://assignments.lrde.epita.fr/)

Because the Student Tiger Project is based on code we provide, we developped a Tiger Compiler ourselves. This page is dedicated to this implementation of the Tiger Compiler.

You may browse the documentation of the code, but because Tiger is one of the most important assignments in the EPITA curriculum, we are not inclined to share the code.

Mailing Lists

  • tiger@lrde.epita.fr: discussions about the compiler which some students can read. In particular, Yakas are allowed to read this thread.
  • tiger-patches@lrde.epita.fr: the patches should be sent there, so that participants can read the ongoing changes. Things that ought to remain hidden from the students can and should be exposed there.

To subscribe to these lists, go to:


HAVM: An interpreter for Andrew Appel's Tiger "Tree" Intermediate Language

Nolimips: A MIPS-based simulator with "infinitely many registers"

MonoBURG: A code-generator generator based on a tree-rewriting system