Pendant le cours de compilation, vous devez écrire un compilateur. Cette année, le langage que vous devez compiler est appelé Vier.

Le langage Vier

Le langage Vier est un langage orienté-objet relativement simple. Nous vous fournissons la spécification de Vier.

Le document fibonacci.vier est un programme Vier valide qui calcule — surprise, surprise — la suite de Fibonacci.

Étapes

Le projet est découpé en cinq étapes successives. Vous trouverez plus d'information sur chaque étape sur la page qui lui est consacrée.

Bonus

En parallèle à l'étape generator, vous pourrez implanter des fonctionnalités bonus comme des extensions à votre compilateur. Les points obtenus de cette façon peuvent compenser des points perdus dans d'autres étapes du projet ou à l'examen final mais ne vous permettent en aucun cas d'obtenir plus que 100 points (La note “6”). Il y a trois extensions de difficulté croissante possibles.

Les points sont concédés si le code rendu pour l'étape generator implante raisonnablement — dans le sens où il correspond au comportement observé pour la même fonctionnalité dans un langage comme Scala ou Java — la fonctionnalité en question. Le choix des extensions bonus tentées par un groupe est libre, en particulier, il est possible de tenter les trois extensions.

S'il y a une extension différente que vous souhaitez implanter, vous pouvez la proposer à Gilles qui la validera éventuellement comme “officielle”.

Correction du project

La correction du projet a lieu de la façon suivante. Nous aurons étudié et partiellement déverminé vos projets avant le jour de la correction. Le jour dit, nous discutons 10–20 minutes avec chaque groupe sur leur projet. Ceci nous permet en particulier de vous faire part des principaux éléments à corriger pour pouvoir continuer le projet normalement, et de vous faire part de notre opinion sur la qualité et le style de votre code. Le but de cette discussion n'est pas de fixer la note mais de vous aider à progresser dans le projet.

Pour des raisons pratiques, nous vous demanderons de prendre rendez-vous avec un des assistants dans Sygeco.

Travailler en groupe

Travailler en groupe est créatif et intéressant. Ce n'est par contre pas toujours très facile. Pour pouvoir tirer le maximum du projet, voici quelques conseils.