Bootstrap (compilateur)

Bootstrap (compilateur)
Page d'aide sur l'homonymie Pour les articles homonymes, voir Bootstrap.

En informatique, le terme bootstrapping décrit les techniques nécessaires à l'écriture d'un compilateur (ou d'un assembleur) dans le langage de programmation cible qu'il doit compiler.

On peut se demander comment résoudre ce paradoxe de l'œuf et de la poule : si l'on a besoin d'un compilateur pour le langage X afin d'obtenir un compilateur pour le langage X, comment le premier compilateur a été écrit ?

  • En écrivant un interpréteur ou un compilateur pour le langage X en langage Y.
  • En utilisant un autre interpréteur ou compilateur pour le langage X qui a déjà été écrit dans un langage Y. C'est ainsi que Scheme est souvent bootstrappé.
  • Des versions initiales du compilateur sont écrites dans un sous-ensemble de X pour lequel il existait un autre compilateur. C'est ainsi que des sur-ensembles de Java sont bootstrappés.
  • Le compilateur de X est croisé d'une autre architecture pour laquelle il existe un compilateur pour X. C'est ainsi que l'on porte généralement vers d'autres plates-formes les compilateurs pour le C.
  • En écrivant le compilateur optimisant X, puis en le compilant à la main à partir de son code source (probablement d'une manière non optimisée) et en tournant le code obtenu pour obtenir le compilateur optimisant.

Les méthodes pour distribuer des compilateurs en code source incluent la fourniture d'un bytecode portable du compilateur, afin de bootstrapper le système de compilation du compilateur avec lui-même.

NELIAC a été le premier langage à fournir un tel bootstrap. PL/I a été le premier langage commercial à le faire.

Aujourd'hui, une large proportion des langages de programmation sont bootstrappés, dont C, Scheme, Ocaml, Pascal, Modula-2, Oberon.

Voir aussi

Lien externe


Wikimedia Foundation. 2010.

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

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

Regardez d'autres dictionnaires:

  • Bootstrap (Compilateur) — Pour les articles homonymes, voir Bootstrap. En informatique, le terme bootstrapping décrit les techniques nécessaires à l écriture d un compilateur (ou d un assembleur) dans le langage de programmation cible qu il doit compiler. On peut se… …   Wikipédia en Français

  • 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 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

  • Bootstrap — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. Sur les autres projets Wikimedia : « Bootstrap », sur le Wiktionnaire (dictionnaire universel) En anglais, les bootstraps sont les anneaux …   Wikipédia en Français

  • NQP (compilateur) — NQP NQP signifie Not Quite Perl (Pas Vraiment Perl). Ce composant de Parrot est un sous ensemble de Perl 6 destiné à l écriture de compilateurs. Il utilise PGE pour l analyse syntaxique. Il est utilisé pour le bootstrap de Rakudo, un compilateur… …   Wikipédia en Français

  • Langage de programmation Red — Red programming language Apparu en 2011 Auteur Nenad Rakocevic Développeur …   Wikipédia en Français

  • Compilation (informatique) — 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

  • Compilation croisée — 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

  • Compilo — 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

  • Bootstrapping — Bootstrap Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom …   Wikipédia en Français

Share the article and excerpts

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