Compilateur de compilateur

Compilateur de compilateur

Un compilateur de compilateur est un programme informatique capable de produire la totalité ou certaines parties de compilateur (partie analyse lexicale, partie analyse syntaxique, partie analyse sémantique, partie synthèse, partie de gestion des erreurs...) pour former un tout cohérent, le code source du compilateur souhaité.

Description

Comme un compilateur classique, il accepte un langage source, par exemple une grammaire couplée à un ensemble d'actions. Il crée un langage cible, le plus souvent des parties d'analyse lexicale et syntaxique. Les parties d'analyse sémantique et de synthèse sont généralement trop proches du langage cible pour être produites automatiquement et leur réalisation est laissée à la charge de l'utilisateur. Certains compilateurs de compilateur permettent de créer également une partie de gestion des erreurs.

Quelques exemples

  • lex et yacc, ou Flex [1] et GNU Bison, permettent respectivement de produire des analyseurs lexicaux et des analyseurs syntaxiques en langage C. Couplés, ils forment un compilateur de compilateur à analyse ascendante LALR.
  • ANTLR[2] permet de générer le code d'un compilateur à analyse descendante LL(k).
  • LDL est un compilateur de compilateur LALR(1) qui inclut un dispositif autocorrecteur d'erreur.
  • SableCC[3] c.
  • JavaCC[4] est un autre générateur de compilateur Java.
  • Coco/R[5] est un générateur simple de compilateur C#/Java/C++ et autres.
  • CodeWorker interprète une grammaire BNF et permet de générer du code, y compris en injectant celui-ci dans du code existant.
  • Parse::Yapp, écrit en langage Perl, produit analyseur LALR en Perl.
  • Parse::RecDescent, écrit en Perl, produit un compilateur descendant en Perl.
  • Parsec.
  • Happy.
  • SYNTAX[6] est un système permettant la production d'analyseurs lexicaux et d'analyseurs syntaxiques efficaces et avec rattrapage d'erreurs pour toutes les grammaires non contextuelles, ainsi que pour certaines classes de grammaires contextuelles.
  • Tatoo[7] est un compilateur de compilateur open source, créé par des enseignants chercheurs de l'université de Marne la Vallée.
  • Rebol[8] est langage généraliste incluant un parser BNF. Celui-ci est utilisé de manière intensive sous le nom de « dialectes » dans de nombreux outils fournis en standard (interface graphique, Web service ...) ou par des contributeurs.

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Compilateur de compilateur de Wikipédia en français (auteurs)

Игры ⚽ Поможем решить контрольную работу

Regardez d'autres dictionnaires:

  • Compilateur croisé — Compilateur Pour les articles homonymes, voir Compilation. Un compilateur est un programme informatique qui traduit un langage, le langage source, en un autre, appelé le langage cible, en préservant la signification du texte source. Ce schéma… …   Wikipédia en Français

  • Compilateur De Compilateur — Un compilateur de compilateur est un programme informatique capable de produire la totalité ou certaines parties de compilateur (partie analyse lexicale, partie analyse syntaxique, partie analyse sémantique, partie synthèse, partie de gestion des …   Wikipédia en Français

  • compilateur — compilateur, trice [ kɔ̃pilatɶr, tris ] n. • 1425; lat. compilator I ♦ 1 ♦ Didact. Personne qui réunit des documents dispersés. « Lecteurs, distinguez l auteur du compilateur » (Restif). 2 ♦ Péj. Auteur qui emprunte aux autres (opposé à créateur) …   Encyclopédie Universelle

  • compilateur — COMPILATEUR. s. m. Celui qui compile. Grand, habile compilateur. Cet Auteur n est qu un simple compilateur …   Dictionnaire de l'Académie Française 1798

  • compilateur — Compilateur. s. m. Celuy qui compile. Grand, habile, simple compilateur …   Dictionnaire de l'Académie française

  • Compilateur — Pour les articles homonymes, voir Compilation. Un compilateur est un programme informatique qui traduit un langage (appelé le langage source) en un autre (le langage cible), généralement dans le but de créer un exécutable. Un compilateur sert le… …   Wikipédia en Français

  • Compilateur Java — Un compilateur Java est un compilateur pour le langage de programmation Java. Le format de sortie le plus courant pour un compilateur Java sont des fichiers .class contenant le bytecode Java plate forme agnostique. Il existe aussi des… …   Wikipédia en Français

  • compilateur — (kon pi la teur) s. m. Celui qui compile.    Dans un sens favorable. Celui qui réunit en un seul corps des documents dispersés. Duchêne, qui a donné cinq volumes de l histoire de France, est un utile compilateur. •   Tribonien, compilateur du… …   Dictionnaire de la Langue Française d'Émile Littré

  • COMPILATEUR — s. m. Celui qui compile. Grand compilateur. Laborieux, habile compilateur. Cet auteur n est qu un simple compilateur …   Dictionnaire de l'Academie Francaise, 7eme edition (1835)

  • compilateur croisé — ● loc. m. ►CIEL Voir compilateur et croisé …   Dictionnaire d'informatique francophone

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”