Number of hours
- Lectures 36.0
- Tutorials 36.0
ECTS
ECTS 6.0
Goal(s)
Introduction to formal language theory and compilers.
Contact Joëlle THOLLOTContent(s)
Formal Languages
- Modeling a language: automata, grammars, expressions
- Equivalence of these formalisms
- Classical algorithms linked to each model
Parsing of context-free languages
- Algebraic languages / BNF definition
- Definitions of semantics and interpreters by attributed BNF
- Abstract syntaxes
- Parse trees
- LL(1) parsing
Compiler Construction
- Architecture of a compiler
- Main components: analysis, verification, code generation
- Link with term project in software engineering
Prerequisites
none
Test
3 written examinations, one at the end of each term
- La note de session 1 est la moyenne pondérée des 3 examens :
N1 = (E1a*6+E1b*4+E1c*6)/16
- La note de session 2 est la note de l'examen de session 2 :
N2 = E2.
Additional Information
Curriculum->Sandwich education->Alternance 1ere annee
Bibliography
- Introduction to automata theory, languages, and computation de Hopcroft, Motwani & Ullman (2007)
- Compilers: Principles, Techniques and Tools de Aho, Lam, Sethi & Ullman (1988/2007)
- The Definitive ANTLR 4 Reference - Terence Parr (2013)