|
TRAITEMENT DES LANGAGES
15h C / 1EO / 1,5 crédits ECTS / SI_TDL
Cédric Cocquebert, Christophe Jacquet
l'objectif est de présenter les principales méthodes et techniques permettant le traitement de divers langages, c'est à dire leur « compréhension » ou leur « modification » par l'ordinateur. Ce cours recouvre donc les domaines de la compilation, de l'interprétation, de l'assemblage et de la transformation de langages.
Langages: syntaxe, sémantique et traduction Langage, syntaxe et sémantique. Interpréteurs. Méthodes LL et LR d'analyse syntaxique. Traduction dirigée par la syntaxe. Analyse sémantique. Traduction des expressions. Notations intermédiaires et optimisation. Aperçu sur la traduction des expressions conditionnelles et booléennes, des objets composés, des instructions. Analyse lexicale. Procédures et passage des paramètres Allocation mémoire. Langage d'assemblage, assembleur et édition de liens Rappels sur le 'langage machine' et le langage d'assemblage. Format de l'exécutable Assemblage en une ou deux passes. Méthodes de gestion de table des symboles et critères de comparaison. Lieur (Éditeur de lien ou Linker): fonctionnement Exécutable relogeable; édition de liens dynamique Structuration des données Grammaire XML et schémas XML. Manipulation d'XML avec les API DOM et SAX. Langages d'interrogation de documents (XPATH, XQuery) et de transformation de documents (XSLT). Exemples d'applications: commerce électronique et transformation de schéma.
Bibliographie
Compilateurs: Principes, Techniques et Outils, A. Aho, R. Sethi et J. Ullman (InterÉditions) 1989. Fundamentals of Programming Languages, E. Horowitz (Computer Science Press) 1984. The Art of Computer Programming Vol.1 : Fundamental Algorithms, D. Knuth (Addison-Wesley) 1968. XML in a Nutshell : A Desktop Quick Reference, W. Scott Means, Elliotte Rusty Harold, 2ième édition, 2002. XSLT 2ème edition M. Kay CampusPress 2001
|