Compilation and Program Analysis
Contents of the course.
This course covers basic topics in compilation and program analysis: the differents steps of machine language production, as well as program analysis for optimisation and verification:
- lexical and syntactic analysis;
- typing, semantics;
- code optimisation and code generation;
- imperative languages, functional langages;
- abstract interpretation.
Prerequisites : familiarity with formal languages (regular expressions, grammars), and induction reasoning, as well as basic notions of computer architecture and in Python programming.
The course has 1 course session (2hours) and 1 lab session (2 hours) per week during the first semester of M1. Students will develop their own compiler as well as a basic abstract interpretation tool.
Page for 2018-19 : http://laure.gonnord.org/pro/teaching/compilM1.html