CTigre

CTigre est la version, sauce Caml, de Tiger, langage défini par Andrew Appel dans son livre sur la compilation. Ce sera notre langage à compiler. Il est assez proche de Pascal, mais plus simple et plus régulier. Sa syntaxe en BNF le rend proche de celle de Caml et de la calculette du TD4, alors que Tiger a une syntaxe proche de celle de SML. Il y a 2 versions 1 et 2 selon que l'on autorise les définitions locales de types.

On peut faire plusieurs remarques sur la sémantique.