Изменения

Перейти к: навигация, поиск

Атрибутные транслирующие грамматики

41 байт добавлено, 09:58, 4 июня 2015
Нет описания правки
<wikitex>Часто, осуществляя разбор, мы хотим извлечь какие-то данные или что-то сделать, а не просто выяснить, разбирается ли текст в данной грамматике.
Вообще говоря, сначала можно получить дерево разборы, а потом уже, обойдя дерево разбора, по нему производить какие-то действия.
В этом случае происходит дублирование функционала: промежуточное сохранение данных в виде дерева разбора не нужно, а иногда это дерево слишком расточительно хранить в памяти.
=Синтаксически управляемая трансляция=
<wikitex>
{{Определение
|definition =
Данные правила циклические; невозможно вычислить ни $A.s$ в узле,ни $B.i$ в дочернем узле, не зная значение другого атрибута.
Далее будет рассмотрено два класса синтаксически управляемых грамматик, для которых можно однозначно определить порядок вычисления атрибутов.
</wikitex>
=Синтезируемые атрибуты=
<wikitex>
{{Определение
|definition =
Хотя всегда можно переписать синтаксически управляемое определение таким образом, чтобы использовать только синтезируемые атрибуты, зачастую более удобно и естественно воспользоваться также и наследуемыми атрибутами.
</wikitex>
=Наследуемые атрибуты=
<wikitex>
{{Определение
|definition =
496
правок

Навигация