Справочное руководство по языку Ада-83


Метод описания и синтаксические обозначения


Контекстно-свободный синтаксис программных модулей языка Ада вместе с контекстно-зависимыми требованиями выражается правилами в повествовательной форме.

Семантика программных модулей описана правилами определения результата выполнения каждой конструкции и правилами их построения. В изложении используются термины, точное определение которых дано в тексте (ссылки на содержащие определения разделы помещены в конце каждого использующего понятие раздела).

Все другие понятия имеют свое естественное значение, определенное в словаре русского языка Ушакова [2]

.

Контекстно-свободный синтаксис языка описывается с помощью простого варианта форм Бэкуса-Наура. В частности:

а) Записанные строчными буквами слова, возможно содержащие в некоторых случаях символ подчеркивания, используются для обозначения синтаксических понятий, например:

аддитивная - операция

В названиях синтаксических понятий, используемых вне контекста синтаксических правил, вместо символа подчеркивания используется пробел (например, аддитивная операция).

б) Полужирным шрифтом выделены зарезервированные слова, например:

array

в) В квадратные скобки заключены необязательные элементы. Поэтому два следующих правила эквивалентны:

оператор-возврата ::= return

[выражение];

оператор-возврата ::= return; | return

выражение;

г) Повторяющиеся элементы заключаются в фигурные скобки. Этот элемент может встретиться нуль или более раз; повторение осуществляется слева направо в соответствии с правилом левой рекурсии. Таким образом, два следующих правила эквивалентны:

слагаемое ::= множитель (операция-умножения множитель)

слагаемое ::= множитель 1 слагаемое операция-умножения множитель

д) Вертикальная черта разделяет альтернативные элементы, кроме тех случаев, когда черта встречается непосредственно за открывающейся фигурной скобкой, тогда она обозначает знак вертикальной черты:

буква-или-цифра ::= буква 1 цифра

сопоставление-компонента ::= [выбор (I выбор) =>] выражение

е) Если название какого-нибудь синтаксического понятия содержит выделенную курсивом часть, оно эквивалентно названию синтаксического понятия без выделенной курсивом части.




Начало  Назад  Вперед



Книжный магазин