Ce cours explore trois questions à propos des langages de
programmation :
Documents
Notes de cours
- Partie 1 : vue d'ensemble [ notes ]
- Partie 2 : analyse syntaxique [ notes ]
- Partie 3 : sémantique et compilation d'un langage impératif [ notes ]
- Partie 4 : sémantique et compilation d'un langage orienté objet [ notes ]
TD/TP
- 4 septembre : TP caml
- 11 septembre : induction structurelle
- 18 septembre : grammaires
- 25 septembre : assembleur
- 2 octobre : expressions régulières et automates
- 9 octobre : analyse ascendante
- 16 octobre : analyse syntaxique, ocamllex, menhir
- 6 novembre : types
- 13 novembre : [ début projet Kawa ]
-
20 novembre : assembleur (fonctions et mémoire)
- Énoncé [ .pdf ]
- 27 novembre : suite projet Kawa [ sujet mis à jour ]
Archives
- Partiel 2022 [ énoncé corrigé ]
- Partiel 2021 [ énoncé corrigé ]
- Examen 2021 [ énoncé ]
Autres ressources
MIPS
Ocaml
- Fiche The OCaml Language
- Fiche OCaml Standard Tools
- Fiche OCaml Standard Library
- Fiche OCaml Emacs Mode (Tuareg)
- Conchon et Filliâtre, Apprendre à programmer avec OCaml. Algorithmes et structures de données. (ouvrage)
Ouvrages sur (et autour de) la compilation
- Aho, Lam, Sethi et Ullman, Modern Compilers: Principles, Techniques, and Tools.
Dit le dragon.
Traduit en français (Compilateurs : principes, techniques et outils). - Pierce, Types and Programming Languages.
- Bryant et O'Hallaron, Computer Systems: A Programmer's Perspective.
- Nisam et Schocken, The Elements of Computing Systems: Building a Modern Computer from First Principles.
- Appel, Modern Compiler Implementation in ML.