I am involved in the MPRI, a research-oriented graduate curriculum in computer science, co-organized by University Paris 7, ENS Paris, ENS Cachan and École Polytechnique.
- Functional programming and type systems, with Didier Rémy, Yann-Régis Gianas and Giuseppe Castagna, MPRI 2-4, since 2010.
- Crash course on Caml and type systems, MPRI, 2005-2006.
- Type systems, DEA Programmation, 1998-2001.
- An introduction to the Objective Caml language and its type system, University of Genova, 1998.
- Advanced compilation, DEA Programmation, 1995-1997.
- Mechanized semantics, with applications to program proof and compiler verification. Verification Technology, Systems & Applications summer school, France, 2013.
- Proving a compiler: mechanized verification of program transformations and static analyses. Oregon Programming Languages Summer School, 2010, 2011, and 2012.
- Mechanized semantics, with applications to program proof and compiler verification. Marktoberdorf summer school, Germany, 2009.
- Compilation and abstract machines, part1 and part 2 (in French), École Jeunes Chercheurs en Programmation, France, 2007.
- Language-based security for mobile code, with applications to smart cards, TECS Week, Pune (India), 2005.
- Compiling functional languages, Spring school on Semantics of programming languages, Agay (France), 2002.