Las gramáticas atribuidas a L son un tipo especial de gramáticas de atributos . [1] Permiten evaluar los atributos en un recorrido en profundidad de izquierda a derecha del árbol de sintaxis abstracta . Como resultado, la evaluación de atributos en gramáticas con atribuciones L se puede incorporar convenientemente en el análisis de arriba hacia abajo .
Una definición dirigida por sintaxis se atribuye a L si cada atributo heredado de en el lado derecho de depende solo de
- los atributos de los símbolos
- los atributos heredados de (pero no sus atributos sintetizados)
Cada definición dirigida por sintaxis atribuida a S también tiene atribución L.
La implementación de definiciones con atributos L en analizadores de abajo hacia arriba requiere reescribir las definiciones con atributos L en esquemas de traducción.
Muchos lenguajes de programación tienen atribución L. Los tipos especiales de compiladores , los compiladores limitados, se basan en alguna forma de gramática con atribución L. Estos son un superconjunto estricto de gramáticas atribuidas-S . Se utiliza para la síntesis de código.
O "atributos heredados" o "atributos sintetizados" asociados con la aparición del símbolo .
Referencias
- ^ Knuth, Donald E. (junio de 1968). "Semántica de lenguajes libres de contexto". Teoría de sistemas matemáticos . 2 (2): 127-145. CiteSeerX 10.1.1.455.1434 . doi : 10.1007 / BF01692511 . ISSN 0025-5661 . S2CID 5182310 . QID 56672530 .