Une grammaire attribuée est une manière formelle de définir des attributs pour les productions d'une grammaire, associant ces attributs à des valeurs. L'évaluation a lieu dans les nœuds de l'arbre syntaxique abstrait quand le langage est traité par un analyseur syntaxique ou un compilateur. Les attributs sont divisés en deux groupes : les attributs synthétisés et les attributs hérités. Les attributs synthétisés sont le résultat des règles d'évaluation des attributs ; ils peuvent aussi utiliser les valeurs d'attributs hérités. Les attributs hérités sont passés vers les feuilles à partir des nœuds parents. Dans certaines approches, on utilise les attributs synthétisés pour passer des informations sémantiques vers la racine de l'arbre. De même, les attributs hérités permettent de passer des informations sémantiques vers les feuilles. Par exemple, lors de la construction d'un outil de traduction de langage, tel qu'un compilateur, on peut utiliser une grammaire attribuée pour affecter des valeurs sémantiques à des constructions syntaxiques. Il est aussi possible de faire des validations sémantiques associées à une grammaire. Ces validations sémantiques représentent les règles du langage non explicitement importées par la syntaxe. On peut aussi utiliser des grammaires attribuées pour traduire l'arbre syntaxique directement en code pour une machine spécifique, ou dans un langage intermédiaire. Les grammaires attribuées peuvent transporter de l'information de n'importe où vers n'importe où dans l'arbre abstrait, d'une manière contrôlée et formelle. C'est leur force. Les grammaires attribuées furent inventées par Donald Knuth et Peter Wegner. Alors que Donald Knuth conçut l'idée générale, Peter Wegner inventa les attributs hérités pendant une conversation avec Knuth. Des idées embryonnaires peuvent être retrouvées dans le travail d' Edgar T. « Ned » Irons, l'auteur de IMP.

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.