- 4MMPGL

Informations générales

  • Number of hours

    • Lectures -
    • Projects 55.0
    • Tutorials -
    • Internship -
    • Laboratory works -
    • Written tests -

    ECTS

    ECTS 4.0

Goal(s)

The objective of this project is to illustrate some aspects of software engineering through the development, in Java, of an application of a significant size, namely a compiler for an object-oriented language..

The main areas of focus are primarily compliance with specifications, software design, validation techniques and the implementation of a quality assurance process.

The chosen theme allows us to both fulfill the above objectives by starting from a well-formalized set of specifications, and to better understand the concepts underlying programming languages.

In addition to software engineering aspects, this project provides an opportunity to explore project and team management.

Responsible(s)

Raquel ARAUJO DE OLIVEIRA, Catherine ORIAT

Content(s)

The project begins with an intensive week dedicated to the study of the specifications (language definition, static and dynamic semantics, target machine), the presentation of the technical aspects, and the outline of the expected documentation and methodology. Follow-up sessions then take place on various topics: the chosen software architecture, testing techniques and objectives, and code acceptance. These sessions help students with both technical aspects and planning and organization.

An "extension" component allows the students to explore a topic of their choice in greater depth (for example, creating a trigonometric function library, generating Java bytecode or ARM code, or extending the considered language).

Prerequisites

Language theory (e.g. 3MMTL), object-oriented programming (e.g. 4MMPOO), knowledge of an assembly language, programming practice.

Test

Evaluation : Projet (évaluation en continu et sur le rendu) + soutenance

Calendar

The course exists in the following branches:

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

Additional Information

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

The course is attached to the following structures:

  • Team Programming and Software

You can find this course among all other courses.

Bibliography

Compilers: Principles, Techniques and Tools de Aho, Lam, Sethi & Ullman (1988/2007)

The Definitive ANTLR 4 Reference - Terence Parr (2013)