Traduction des Langages
Objectifs
Le but de ce module est de présenter les outils théoriques et pratiques nécessaires à la réalisation d’un compilateur et à la traduction de langages.
Description
– Introduction illustrée à la compilation.
– Analyse lexicale, outil lex.
– Grammaires. Analyse syntaxique descendante.
– Grammaires attribuées.
– Table des symboles, contrôle de type, gestion de la mémoire, génération de code.
Compétences visées
L'étudiant doit maîtriser les différentes étapes de la traduction des langage : analyse lexicale, analyse syntaxique et analyse sémantique. Dans la cas particulier de la compilation, il doit connaître quatre phases de l'analyse sémantique : la résolution des identifiant grâce à une table des symboles, le typage, le placement mémoire des variables et la génération de code. L'étudiant réalisera un compilateur qui prendra en langage d'entrée une sous partie du C, qui produira du code pour une machine abstraite à pile. Le compilateur sera lui-même écrit en Java à l'aide d'XText.
Pré-requis nécessaires
- Architecture
- Conception et programmation objet avec le langage JAVA
Session 1 ou session unique - Contrôle des connaissances
Modalité | Nature | Coefficient | Remarques |
---|---|---|---|
CT (contrôle terminal) | Oral/Ecrit | 100% | Examen Traduction des Langages |
Session 2 - Contrôle des connaissances
Modalité | Nature | Coefficient | Remarques |
---|---|---|---|
CT (contrôle terminal) | Oral/Ecrit | 100% | Examen Traduction des Langages |