L-атрибутивная грамматика - L-attributed grammar
Эта статья нужны дополнительные цитаты для проверка.Июль 2020 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
L-атрибутные грамматики особый тип грамматики атрибутов.[1] Они позволяют оценивать атрибуты за один проход слева направо в глубину абстрактное синтаксическое дерево. В результате оценка атрибутов в грамматиках с L-атрибутами может быть легко включена в нисходящий синтаксический анализ.
Синтаксически ориентированное определение является L-атрибутом, если каждое унаследованный атрибут на правой стороне зависит только от
- атрибуты символов
- унаследованные атрибуты (но не его синтезированные атрибуты)
Каждое определение, ориентированное на синтаксис с S-атрибутами, также является L-атрибутом.
Реализация определений с L-атрибутами в синтаксических анализаторах Bottom-Up требует переписывания определений с L-атрибутами в схемы перевода.
Многие языки программирования имеют L-атрибуцию. Особые виды компиляторы, узкие компиляторы, основаны на некоторой форме грамматики с L-атрибутами. Это строгий надмножество Грамматики с S-атрибутами. Используется для синтеза кода.
Либо «унаследованные атрибуты», либо «синтезированные атрибуты», связанные с появлением символа. .
Рекомендации
- ^ Кнут, Дональд Э. (Июнь 1968 г.). «Семантика контекстно-свободных языков». Математическая теория систем. 2 (2): 127–145. CiteSeerX 10.1.1.455.1434. Дои:10.1007 / BF01692511. ISSN 0025-5661. S2CID 5182310. QID 56672530.