Cтраница 1
Фактическое появление идентификатора в списке формальных параметров процедуры является явным его объявлением с атрибутами по умолчанию. Такое объявление может сочетаться с явным объявлением с помощью оператора DECLARE ( внутри тела процедуры), если атрибуты по умолчанию не устраивают программиста. [1]
Всякое появление идентификатора процедуры в каком-либо выражении означает новое обращение к процедуре. [2]
Второе появление идентификатора Done приводит к ошибке компиляции. Компилятор помечает переменную как уже существующую. [3]
Для любого вхождения идентификатора в программу ( так называется появление идентификатора в каком-либо месте программы) его роль в этом месте может быть установлена следующим образом. Выбирается самый внутренний из всех блоков, охватывающих это вхождение, в которых локализован данный идентификатор. Если таких блоков нет, то этот идентификатор может быть только идентификатором, закрепленным за некоторым стандартным объектом ( см. стр. В противном случае идентификатор в рассматриваемом вхождении представляет тот же объект, что в выбранном блоке. [4]
Когда такая строка появляется в файле, вместо всех последующих появлений идентификатора будет автоматически подставлен заменяющий текст, перед тем как программа будет компилироваться. [5]
В XPL, как и в большинстве языков программирования, необходимо связывать каждое появление идентификатора с его объявлением. Компилятор ХСОМ осуществляет эту связь посредством таблицы символов, содержащей соответствующую информацию обо всех активных идентификаторах. Информация, требуемая для компиляции, включает имя, тип и адрес ( например, базу и смещение) каждого идентификатора. Для каждой процедуры необходимо также записывать количество, типы и адреса ( но не имена) ее параметров. В таблице символов ХСОМ также записывается строка, в которой была объявлена переменная и количество ссылок на каждый идентификатор, так как эти сведения могут быть полезны для диагностических сообщений. [6]
Если процедура FUN внутренняя, то объявлять FUN как имя точки входа не обязательно, так как появление идентификатора FUN перед оператором PROCEDURE есть его явное объявление. [7]
![]() |
Структура таблицы идентификаторов для вложенных блоков. [8] |
Прежде всего рассмотрим задачи и возможные решения, связанные с адресацией переменной, обращение к которой осуществляется данным появлением идентификатора в программе. [9]
Как видно из приведенного выше формата, каждое предложение может быть снабжено меткой. Появление идентификатора в поле метки предложения, определяющего какой-либо объект, означает, что этот идентификатор является именем данного внутреннего объекта - это имя и используется для ссылок на данный объект. Для ссылок на внешние и общие объекты в каждом модуле также используются имена, которые могут выбираться произвольно - - с соблюдением естественного требования, чтобы в одном и том же модуле одинаковые идентификаторы не использовались в качестве имен разных объектов. [10]
В языке Ада - особенность описания, которая состоит в том, что описание понятия, вводящее идентификатор, становится видимым в данной точке программы, если это понятие осмысленно при появлении указанного идентификатора в этой точке. [11]