Difference between revisions of "Tiger"

From LRDE

(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
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 [[http://www.lrde.epita.fr/~akim/ccmp/assignments.html http://www.lrde.epita.fr/~akim/ccmp/assignments.html]].
+
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 [http://www.lrde.epita.fr/~tiger/assignments.html http://www.lrde.epita.fr/~tiger/assignments.html].
  
 
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.
 
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.
  
=== Getting access to the sources ===
+
You may browse the [http://www.lrde.epita.fr/~tiger/tc-doc 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.
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. Nevertheless we make exceptions for:
 
students involved with extensions of our compiler
 
other teachers willing to follow an imaginary "Modern Compiler Implementation in C++" book.
 
Contact AkimDemaille to get these sources.
 
  
 
=== Mailing Lists ===
 
=== 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@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.
 
* 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: http://www.lrde.epita.fr/cgi-bin/mailman/listinfo/tiger and http://www.lrde.epita.fr/cgi-bin/mailman/listinfo/tiger-patches.
+
To subscribe to these lists, go to:  
 +
* http://lists.lrde.epita.fr/listinfo/tiger and
 +
* http://lists.lrde.epita.fr/listinfo/tiger-patches.
 +
 
 +
 
 +
===  Subprojects    ===
 +
 
 +
==== [[Havm|HAVM]]: An interpreter for Andrew Appel's Tiger "Tree" Intermediate Language ====
 +
 
 +
 
 +
 
 +
==== [[Nolimips|Nolimips]]: A MIPS-based simulator with "infinitely many registers" ====
 +
 
 +
 
 +
==== [[MonoBURG|MonoBURG]]: A code-generator generator based on a tree-rewriting system ====

Revision as of 13:55, 10 May 2016

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 http://www.lrde.epita.fr/~tiger/assignments.html.

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:


Subprojects

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