Последние узлы дерева АСТ должны иметь информацию о передаче семантического анализатора или о последних узлах также могут иметь эту информацию?Семантический анализатор деревьев АСТ
ответ
Ваш вопрос выглядит не совсем правильно.
В предположении вы подразумеваете «узлы листа», где вы написали «последние узлы», да, вы можете связать семантическую информацию не только с листьями, но и с внутренними узлами.
Простым примером может быть «тип этого выражения». Понятно, что листовой узел, содержащий литерал TRUE, будет иметь тип выражения «boolean», связанный с ним. Выражение «if e then 2.7 else 9.3 endif» имеет соответствующий AST, а внутренний узел, соответствующий if-выражению, будет иметь связанный тип «float».
Есть много «семантических» свойств, которые можно предложить: «использует переменные X, Y, Z», «без побочных эффектов», «параллельные параллельные подпроцессы» и т. Д. Любой из них может применяться к внутренним узлам дерева ,
Если я правильно понимаю ваш вопрос, в АСТ, внутренние узлы также могут нести семантическую информацию, а также узлы листа.
Все деревья АСТ должны хранить семантическую информацию.
Но, правда, что «узлы листа» (узлы, которые ссылаются на переменные, значения, операнды) могут хранить некоторую дополнительную или различную информацию, чем «ветви-узлы» или «не листовые узлы».