# Planning of the compilation course (CAP, Compilation and Program Analysis) _Academic first semester 2024-2025_ # Week 1: - :book: Course: Monday 09/09/2024, 13h30-15h30. Amphi K (Gabriel Radanne) * Introduction: [transparents](course/capmif_cours01_intro_et_archi.pdf). * ISA [ref pdf RISCV](course/riscv_isa.pdf). * [Demo Assembly](course/demo20.s). * Lexing, Parsing, [slides](course/capmif_cours02_lexing_parsing.pdf). * [Demo Parsing](course/ANTLRExamples.tar.xz). - :hammer: Lab 1: Thursday 12/09/2024, 10h15-12h15. Room E001 (Samuel Humeau & Emma Nardino) - :rocket: Additional ressources (mainly in english) * A nice YT video on [structural induction](https://www.youtube.com/watch?v=2o3EzvfgTiQ) by F. Pereira. * Fernando Pereira's other videos on operational semantics : [video1](https://www.youtube.com/watch?v=bOzbRhXvtlY), [video2](https://www.youtube.com/watch?v=aiBKOuM5iEA). # Week 2: - :book: Course: Monday 16/09/2024, 13h30-15h30. Amphi SVT (Bio) (Yannick Zakowski) * Semantics: [transparents](course/capmif_cours_03_semantics.pdf). - :book: Course: Thursday 19/09/2024, 10h15-12h15. Amphi B (Yannick Zakowski) * Typing: [transparents](course/capmif_cours_04_typing.pdf). # Week 3: - :hammer: Lab 2: Thursday 23/09/2023, 13h30-15h30. Room E001 103 & -138 (Grenat) (Samuel Humeau & Emma Nardino) * Lexing & Parsing with ANTLR4 [TP02](TP02/tp2.pdf). * Code in [TP02/](TP02/). - :book: Course: Thursday 26/09/2024, 10h15-12h15. Amphi B (Gabriel Radanne) * Interpreters: [transparents](course/capmif_cours03_interpreters.pdf). * 3 Address code generation: [transparents](course/capmif_cours05_3ad_codegen.pdf). # Week 4: - :hammer: Lab 3: Monday 30/09/2024, 13h30-15h30. Room E001 (Samuel Humeau & Emma Nardino) * Interpreter & Typer [TP03](TP03/tp3.pdf). * Code in [TP03/](TP03/) and [MiniC/TP03/](MiniC/TP03/). - :book: Course: Thursday 3/10/2024, 10h15-12h15. Amphi B (Gabriel Radanne) * CFG [slides in english](course/capmif_cours06_irs.pdf). # Week 5: - :hammer: Lab 4a: Monday 07/10/2024, 13h30-15h30. Room E001 (Samuel Humeau & Emma Nardino) * Syntax directed code generation [TP04](TP04/tp4a.pdf). * Code in [MiniC/TP04/](MiniC/TP04/). * Documentation [here](docs/html/index.html). - :book: Course: Thursday 10/10/2024, 10h15-12h15. Amphi B (Gabriel Radanne) * SSA [slides in english](course/capmif_cours06a_ssa.pdf). # Week 6: - :hammer: Lab 4b: Thursday 14/10/2024, 13h30-15h30. Room E001 (Samuel Humeau & Emma Nardino) * Control Flow Graph [TP04b](TP04/tp4b.pdf). * Code in [MiniC/TP04/](MiniC/TP04/). * Documentation (updated) [here](docs/html/index.html).