Cette unité d'enseignement présente les composants fondamentaux d'un compilateur (analyseurs syntaxique, lexicale et sémantique, table des symboles etc.) et les principales techniques de compilation utilisées dans ces composants (lex, yacc etc.) .

À l'issue de ce module, l'étudiant aura acquis suffisamment de compétences pour pouvoir rapidement écrire un compilateur  et d’assimiler les notions qui permettent de comprendre les problèmes et les solutions dans les compilateurs modernes. Il saura également conduire un projet de programmation et de traduction dirigée par la syntaxe, il saura distinguer ce qui relève des langages source (langage haut niveau) et cible (langage machine) et du langage de programmation de la traduction. Dans le cas de traduction de langage de programmation (commande, script, etc.), l'étudiant saura prévoir le comportement dynamique du programme cible et conduire des analyses élémentaires de ce comportement.