Langages de programmation et compilation 2025-2026
Jean-Christophe Filliâtre
Cours donné aux élèves de première année à
l'École Normale Supérieure.
- Cours le vendredi de 8:30 à 10:30 en salle
E. Noether (ex U ou V)
(voir moodle)
- TDs le jeudi (15h30 à 17h00) ou le vendredi (10h45 à 12h15) en salle INFO 3 NIR
avec Samuel Vivien
- Évaluation : un examen + un projet
Cours
Séances :
- Cours 1 (26 septembre 2025) : aperçu de la compilation / assembleur x86-64
- Cours 2 (3 octobre 2025) : syntaxe abstraite / sémantique / interprètes
- Cours 3 (10 octobre 2025) : analyse lexicale
- Cours 4 (17 octobre 2025) : analyse syntaxique 1/2
- Cours 5 (24 octobre 2025) : analyse syntaxique 2/2
- pas de cours le vendredi 31 octobre
(vacances Toussaint)
- Cours 6 (7 novembre 2025) : typage
- Cours 7 (14 novembre 2025) : mode de passage des paramètres
- Cours 8 (21 novembre 2025) : compilation des langages fonctionnels
- Cours 9 (28 novembre 2025) : compilation des langages objets
- Cours 10 (5 décembre 2025) : compilateur optimisant, partie 1
- Cours 11 (12 décembre 2025) : compilateur optimisant, partie 2
- Cours 12 (19 décembre 2025) : allocation mémoire
TD
Il y a deux groupes de TD (en alternance avec les TD d'algo) :
- groupe 1 le vendredi 10h45 - 12h15
- groupe 2 le jeudi (de la semaine suivante) 15h30 - 16h45
Séances :
Projet
Cette année, on compile un sous-ensemble du
langage Pyret.
(On peut jouer avec Pyret en ligne.)
Le sujet du projet sera donné bientôt, avant les vacances de la Toussaint.
Examen
L'examen aura lieu le vendredi 23 janvier
de 8h30 à 11h30 en salle E. Noether.
Archives :
janvier 2025
(corrigé) /
janvier 2024
(corrigé) /
janvier 2023
(corrigé) /
janvier 2022
(corrigé) /
janvier 2021
(corrigé) /
janvier 2020
(corrigé)
Liens / Bibliographie
Outils
Cartes de référence
Ouvrages en rapport avec le cours
Ces trois ouvrages sont disponibles à la bibliothèque.
Le cours ci-dessus ne suit pas vraiment ces ouvrages.
Néanmoins, ce sont de très bons ouvrages, conseillés pour aller plus loin.
For foreign students not yet fluent in French
- A tiny French-English dictionary
- a rough correspondence between the lectures and chapters from the
books above (which are in English):
| Lecture | Chapters
|
1 | Assembly | Bryant & O'Hallaron 3
|
2 | Semantics | Pierce 3-4-5
|
3 | Lexical analysis | Dragon 3
|
4-5 | Syntactic analysis | Dragon 4
|
6 | Typing | Pierce 8-9-10 et 22
|
12 | Memory allocation
| Bryant & O'Hallaron 9
|
Remerciements : merci à Christine Paulin, François Pottier et
Xavier Leroy pour leur aide dans la préparation de ce cours