Непейвода Н.Н. Программирование. Раздел 3

Непейвода Н.Н. Программирование. Страница 291

на рис. 8.1. Этой конструкцией устанавливается атрибут <тело>, который можно трактовать как адрес абстрактносинтаксического представления де­рева процедуры. <Тело> может быть вычислено в позиции оператора, это обеспечивает возможность выполнения конструкции вызова как выполнения тела.

При вызове процедуры абстрактный вычислитель, действующий в соот­ветствии с любым из двух алгоритмов вычисления структуры конструкции вызова (см. рис. 2.10 из § 2.3.4), прежде всего должен найти имя вызывае­мой процедуры. Если имя не найдено, то это квалифицируется как ошибка конструкции вызова.

Где могут (или должны) храниться имена, чтобы обеспечить возмож­ность их эффективного нахождения? Согласно семантике описания имена рассматриваются в качестве атрибутов конструкций, в которых они появля­ются. В соответствии с этим можно организовать и хранение описываемых имен как атрибутов соответствующих вершин дерева. Однако это не очень удобно по следующим причинам:

хранение и поиск имен отделены от работы с деревом абстрактного синтаксиса, для которой требуется лишь две интерфейсные процедуры: предоставить нужный атрибут имени при обращении к его использу­ющему вхождению и сохранить имя с его атрибутами при обработке описания;

обеспечение работы со стеком контекстов (см. § 7.4.2) естественно ор­ганизовывать при обработке описаний, когда есть возможность сгруп­пировать секции контекстов без дополнительных просмотров дерева;

для внешних по отношению к программе сущностей затруднительно указать конструкции, в которых появляются их описания (принятое именно с этой целью в Алголе 68 соглашение о стандартном вступле­нии плохо согласуется, например, с потребностью модульной структу­ры библиотек).

Новости

  • 1
  • 2
Prev Next

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

24.01.2016

Ракета &quot;Ангара-А5В&quot; в ближайшее десятилетие не полетит

Роскосмос не планирует в течение ближайшего десятилетия осуществлять пуск тяжёлой ракеты-носителя А...

Ученые РФ опровергли выводы исследований о вреде ГМО

24.01.2016

Ученые РФ опровергли выводы исследований о вреде ГМО

Исследователи из Института проблем передачи информации (ИППИ РАН) проанализировали несколько самых п...

Летающие "Крокодилы"

24.01.2016

Летающие &quot;Крокодилы&quot;

20 удивительных фактов о боевом вертолете Ми-24.Этот вертолет стал таким же узнаваемым символом сове...

В Аргентине описали новый вид динозавра-гиганта

24.01.2016

О ранее неизвестном виде динозавра, относящемуся к инфраотряду зауроподов, рассказали аргентинские п...

Реклама