- 4MMCOMP

Informations générales

  • Number of hours

    • Lectures 24.0
    • Projects -
    • Tutorials 10.0
    • Internship -
    • Laboratory works 14.0
    • Written tests -

    ECTS

    ECTS 4.0

Goal(s)

  • Understand programming languages beyond their syntactical aspects
  • Implement a simple compiler
  • Interpret compiler error messages correctly

Responsible(s)

Laure GONNORD

Content(s)

The course covers the following concepts

  • The role and architecture of a compiler
  • Lexical and syntactic analysis
  • Semantic analysis, typing
  • Compiler data structures: syntax trees, control flow graphs, SSA form
  • Register allocation
  • Code generation to assembler

These concepts will be put into practice in practical exercises by creating a compiler for a mini imperative language.

Prerequisites

  • Familiarity with an imperative programming language (C, Java, etc.)
  • Basic knowledge of regular expressions and grammars.
  • Basic knowledge of assembly language programming: assembly language, run-time stack, etc.

Test

Evaluation : 25% of TP et projets notés + examens écrits et oraux and 75% of Examen écrit (1,5H)

Resit : 25% of TP et projets notés + examens écrits et oraux (reported score) and 75% of Examen écrit (1,5H)

  • E1 = Session 1 Written, 1.5 hours, no document or calculator allowed.
  • E2 = Session 2: Written, 1.5 hours, no document or calculator allowed.
  • CC = 1 or more marks (lab delivery, in-house problems, paper assessment)

Calendar

The course exists in the following branches:

  • Curriculum - Core curriculum - Semester 7
see the course schedule for 2026-2027

Additional Information

Course ID : 4MMCOMP
Course language(s): FR

You can find this course among all other courses.

Bibliography

TBD