• ECTS

    5 crédits

  • Composante

    École Nationale Supérieure d'Électrotechnique d'Électronique d'Informatique d'Hydraulique et des Télécommunications

Objectifs

L'objectif de l'UE est double. L'étudiant doit maîtriser les principes de l'algorithmique et de la programmation sans effet de bord en utilisant la programmation fonctionnelle. Il doit notamment maîtriser les concepts de récursivité, complexité et terminaison des algorithmes. Il doit pouvoir manipuler les listes et les itérateurs, ainsi que les modules et foncteurs. Le langage de programmation associé est le langage OCaml.

Il doit également maîtriser les différentes étapes de la traduction des langages : 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 identifiants 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 OCaml.

Lire plus

Informations complémentaires

Liste des enseignements