Arbre de syntaxe abstraite

Arbre de syntaxe abstraite

Arbre syntaxique abstrait

Page d'aide sur l'homonymie Pour les articles homonymes, voir AST.

En informatique, un arbre syntaxique abstrait (abstact syntax tree ou AST en anglais) est un arbre avec des labels dont les nœuds internes sont marqués par des opérateurs et dont les nœuds fils ( feuilles ou nœuds externes ) représentent les opérandes de ces opérateurs.
Autrement dit, chaque feuille a un opérateur de valence nulle (n'a pas d'opérande), des variables ou des constantes.

Un arbre syntaxique abstrait est utilisé par un analyseur syntaxique comme un intermédiaire entre un arbre d'analyse et une structure de données. On utilise celle-ci comme la représentation intermédiaire interne d'un programme informatique pendant qu'elle est optimisée et à partir de laquelle la génération de code est effectuée. La portée des structures possibles est décrite par la syntaxe abstraite.

Un AST diffère d'un arbre d'analyse par l'omission des nœuds et des branches qui n'affecte pas la sémantique d'un programme. Un exemple classique est l'omission des parenthèses de groupement, puisque dans un AST, le groupement des opérandes est explicite dans la structure de l'arbre.

La création d'un arbre syntaxique abstrait pour un langage décrit par sa grammaire est facile pour la plupart des langages.
La plupart des règles de la grammaire créent un nouveau nœud dont les branches sont les symboles de la règle.
Les règles qui ne contribuent pas à l'arbre sont les règles de groupement, qui passent simplement le nœud pour l'un de leurs symboles.
Un analyseur syntaxique peut aussi créer un arbre complet, et faire une passe ultérieure pour supprimer les nœuds non utilisés par l'arbre syntaxique abstrait.

Voir aussi

  • Arbre de résolution sémantique (RST en anglais)
  • Arbre d'interprétation syntaxique (IST en anglais)
  • Arbre syntaxique de génération de code (sigle anglais : CST)
  • Arbre sémantique (ASG)
  • Table de symboles

Liens externes

  • PMD est un outil de contrôle de qualité de code Java, utilisant les arbres syntaxiques abstrait pour analyser le code source.

Références

Cet article est basé sur une traduction de la Free On-line Dictionary of Computing et est utilisé avec permission selon la GFDL.

Ce document provient de « Arbre syntaxique abstrait ».

Wikimedia Foundation. 2010.

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

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

Regardez d'autres dictionnaires:

  • Arbre de syntaxe abstrait — Arbre syntaxique abstrait Pour les articles homonymes, voir AST. En informatique, un arbre syntaxique abstrait (abstact syntax tree ou AST en anglais) est un arbre avec des labels dont les nœuds internes sont marqués par des opérateurs et dont… …   Wikipédia en Français

  • Syntaxe abstraite — Dans la définition formelle des langages de programmation, la syntaxe abstraite s oppose à la syntaxe concrète. Tandis que cette dernière représente les suites de caractères que l utilisateur doit taper, la syntaxe abstraite tend à donner une… …   Wikipédia en Français

  • Syntaxe concrète — Syntaxe abstraite Dans la définition formelle des langages de programmation, la syntaxe abstraite s oppose à la syntaxe concrète. Tandis que cette dernière représente les suites de caractères que l utilisateur doit taper, la syntaxe abstraite… …   Wikipédia en Français

  • Arbre Syntaxique Abstrait — Pour les articles homonymes, voir AST. En informatique, un arbre syntaxique abstrait (abstact syntax tree ou AST en anglais) est un arbre avec des labels dont les nœuds internes sont marqués par des opérateurs et dont les nœuds fils ( feuilles ou …   Wikipédia en Français

  • Interpretation abstraite — Interprétation abstraite L interprétation abstraite est une théorie d approximation de la sémantique de programmes informatiques basée sur les fonctions monotones pour ensembles ordonnés, en particulier les treillis (en anglais : lattice).… …   Wikipédia en Français

  • Interprétation Abstraite — L interprétation abstraite est une théorie d approximation de la sémantique de programmes informatiques basée sur les fonctions monotones pour ensembles ordonnés, en particulier les treillis (en anglais : lattice). Elle peut être définie… …   Wikipédia en Français

  • Interprétation abstraite — L interprétation abstraite est une théorie d approximation de la sémantique de programmes informatiques fondée sur les fonctions monotones pour ensembles ordonnés, en particulier les treillis (en anglais : lattice). Elle peut être définie… …   Wikipédia en Français

  • Famille abstraite de langages — En informatique théorique, et en particulier en théorie des langages formels, le terme famille abstraite de langages réfère à une notion qui généralise des caractéristiques communes aux langage rationnels, aux langages algébriques, aux langages… …   Wikipédia en Français

  • Abstract syntax tree — Arbre syntaxique abstrait Pour les articles homonymes, voir AST. En informatique, un arbre syntaxique abstrait (abstact syntax tree ou AST en anglais) est un arbre avec des labels dont les nœuds internes sont marqués par des opérateurs et dont… …   Wikipédia en Français

  • Grammaire non contextuelle — En linguistique et en informatique, une grammaire non contextuelle, grammaire hors contexte ou grammaire algébrique (type 2 dans la hiérarchie de Chomsky) est une grammaire formelle dans laquelle chaque règle de production (ou simplement… …   Wikipédia en Français

Share the article and excerpts

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