CSC_52064 : Compilation
Enseignant responsable
: Jean-Christophe
Filliâtre
Année 2026-27
(English version)
(moodle)
Présentation
Ce cours est une introduction à la compilation. On y explique les
techniques et outils utilisés dans les différentes phases d'un
compilateur, jusqu'à la production de code assembleur optimisé.
plan du cours
Cours
En amphi Poisson (14:00-16:00).
- Introduction (4 janvier 2027)
- Cours 1 (4 janvier 2027) : Assembleur x86-64
- Cours 2 (11 janvier 2027) : Syntaxe abstraite, sémantique et interprète
- Cours 3 (25 janvier 2027) : Analyse lexicale et syntaxique
- Cours 4 (1 février 2027) : Typage
- Cours 5 (jeudi 4 février 2027) : Modes de passage
- Cours 6 (8 février 2027) : Objets et fermetures
- Cours 7 (22 février 2027) : Compilateur optimisant 1/2
- Cours 8 (1 mars 2027) : Compilateur optimisant 2/2
- Cours 9 (8 mars 2027) : Allocation mémoire
TD
En salles info 32 et 33 (16:15-18:15).
- TD 1 : Assembleur x86-64
- TD 2 : Interprète mini-Python
- TD 3 : Analyse syntaxique de mini-Turtle
- TD 4-9 :
Projet
Le sujet sera donné en semaine 4.
Examen
Le contrôle écrit aura lieu le lundi 15 mars de 14h à 17h.
(Salle à déterminer.)
Archives :
Ressources
Environnement de travail
Pour les TD et le projet, vous aurez besoin
- de compiler du code assembleur x86-64 (TD 1 + fin du projet) ;
- de compiler du code OCaml (à partir du TD 2).
Voici quelques pointeurs.
Cartes de référence
Ouvrages en rapport avec le cours
Ces trois ouvrages sont disponibles à la BCX.
Le cours ci-dessus ne suit pas vraiment ces ouvrages.
Néanmoins, se sont de très bons ouvrages, conseillés pour aller plus loin.
Dictionnaire
Merci à Léon Gondelman et Mário Pereira pour leur aide pendant la
préparation de ce cours.