В каждом алфавите соответствующие друг другу прописные и строчные буквы эквивалентны, за исключением ситуаций, предусмотренных в подразделе 3.1. и п.3.5.2 настоящего приложения.
Конструкт в языке представления получается заменой символов на их представления. Представление для каждого символа дается в терминах абстрактных литер. Кодирование конструктов в языке представления для машинной обработки осуществляется заменой каждой абстрактной литеры на соответствующую ей конкретную литеру и вставкой особенностей типографского набора (там, где это разрешено).
В некоторых реализациях отдельные конкретные литеры могут не иметь представлений на устройствах ввода-вывода. В таких случаях реализация должна обеспечить дополнительное представление соответствующих им абстрактных литер (пап ример, в виде комбинаций конкретных литер, доступных на этих устройствах). При этом, в частности, допускается расширение списка зарезервированных слов из подпункта 3.4.1.3 данного приложения, а также введение альтернативных обозначений из разд. 10 и расширение списка представлений символов из п. 9.4.1 настоящего стандарта альтернативными представлениями, использующими только доступные конкретные литеры.
Чтобы перенос программ сводился только к простой транслитерации, реализация должна предусматривать способ представления программ в виде, не использующем подобных местных соглашений, и преобразование программ к такому виду.
Отдельные представления
Элементы строки
Множество элементов-строки (подпункт 8.1.4.1. Ь) — это множество абстрактных литер без кавычки и апострофа, но с символом-образ-кавычки и символом- образ-апострофа. Значение каждой абстрактной литеры есть сама литера. Соответствующие друг другу прописные и строчные буквы имеют различные естественные значения. Символ-образ-кавычки записывают двумя соприкасающимися кавычками и его естественным значением является кавычка. Символ-образ-апострофа записывают двумя соприкасающимися апострофами и его естественным значением является апостроф (один апостроф может использоваться в реализациях как регистровая литера).
Последовательность управляющих литер, отсутствующих на устройстве ввода-вывода, или одна такая литера в изображении-строки может быть представлена следующим образом:
символ-апостроф,
символ-открыть,
символ-образов-управляющих-литер,
символ-закрыть.
Образы литер в списке могут задаваться целыми десятичными числами, а также их обозначениями в русской или латинской нотации по ГОСТ 27465 и должны разделяться запятыми.
Дополнительная особенность типографского набора - „разрыв строки” - предусмотрена для использования только внутри изображений-строк и изображений- литерных и записывается как кавычка с последующими одной или более особенностями типографского набора, отличными от разрыва строки, с последующей еще одной кавычкой.
Когда изображение-строки должно быть размещено в исходном тексте программы на нескольких строчках, разрыв строки позволяет указывать количество пробелов в конце одной строчки и однозначно определяет положение продолжения изображения строки на следующей строчке.
Элементы прагматов
Последовательностью-элементов-ПОЯСНЕНИЯ-ОФОРМЛЕННЫХ (п. 9.2.1.с) может служить любая последовательность литер (не обязательно абстрактных), в которую не входит последовательность (вместе с разделителями), представляющая сам символ-ПОЯСНЕНИЕ-ОФОРМЛЕННЫЙ (т. к. последним завершается прагмаТ). В реализации возможны, однако, дальнейшие ограничения на последовательность литер, допустимых в прагматах (но только не в примечаниях).
Предусмотрены шесть стандартных элементов-прагматов: СТРАНИЦА (PAGE), ТЧК (POINT), BP (UPPER), РЕЗ (RES), ЗАПОМНИТЬ (PUSH), ВОССТАНОВИТЬ (ГОР) (В скобках английские эквиваленты элементов-прагматов). Эти элементы должны распознаваться хотя бы в их минимальной форме:
Символ-прагмат-ОФОРМЛЕННЫЙ,
элемент,
Символ-прагмат-ОФОРМЛЕННЫЙ.
Каждый из перечисленных элементов-прагматов записывается как последовательность букв, которым могут предшествовать или за которыми могут следовать особенности типографского набора. (Во всех выделяющих режимах символ-прагмат может быть записан как „ПРАГМ” с последующим разделителем).
Новая страница
При распечатке некоторого конструкта в конкретных литерах с помощью процессора Алгола 68 прагмат, содержащий элемент прагмата СТРАНИЦА (PAGE) указывает, что строчку, следующую за строчкой, содержащей замыкающий символ- прагмат, печатают с начала новой страницы. (Прагмат СТРАНИЦА не является, однако, особенностью типографского набора).
Запоминание режима выделения
Прагмат, содержащий элемент-прагмата ЗАПОМНИТЬ (PUSH), указывает, что значение действующего в данном месте прагмата, определяющего режим выделения (подраздел 3.4 настоящего приложения), запоминается для последующего восстановления.
Прагмат, содержащий элемент-прагмата ВОССТАНОВИТЬ (POP), связывается с последним из прагматов, содержащих элемент-прагмата ЗАПОМНИТЬ, еще не связанным с другим прагматом, содержащим элемент-прагмата ВОССТАНОВИТЬ (если такой есть), и восстанавливает действие того из прагматов, задающих режим выделения, который действовал перед этим прагматом.
О с о б е н н о с т и типографского набора
Особенностями типографского набора являются пробел, новая строчка и разрыв строки. Новая строчка может быть одной конкретной литерой или физическим явлением, подобным концу записи. Разрыв строки используют только в изображе- ниях-строки.
Слова и выделенные слова
Представление слов и выделенных слов определяют „режим выделения". Существует три режима выделения: выделение точкой, выделение прописными буквами, резервирование слов.
Новый режим вводится прагматом, содержащим один из элементов-прагмата ТЧК (POINT), BP (UPPER), РЕЗ (RES) и начинает действовать сразу же после замыкающего символа-прагмат. Режим не действует на „оформление” представления (так, в режимах ВР и РЕЗ „ПРАГМ” соответствует „ПРАГМ”). Приводимые ниже правила требуют наличия резделителя в некоторой позиции. В качестве разделителей можно использовать особенности типографского набора. Слова различаются только тогда, когда различны конкатенации их подслов, например, „конец файла”, мсжет быть записан также как „конец файла”.
В режиме выделения точкой (ТЧК) выделенные слова представляются следующим образом:
выделенные слова начинаются с точки ( . ), за которой следуют слоги, содержащие по порядку абстрактные буквы и цифры, соответствующие выделенным буквам и цифрам слова:
слоги должны разделяться литерами подчеркивания, но не особенностями типографского набора;
за выделенным словом должен следовать разделитель.
В режиме выделения точкой слова представляют следующим образом:
слово составляется из последовательности одного или более слогов, разделенных нулем или более особенностей типографского набора:
слог составляется из соответствующих, расположенных по порядку, абстрактных букв и цифр и может завершаться литерой подчеркивания;
если слог не завершается литерой подчеркивания, то после него должен следовать разделитель.
В режиме выделения прописными буквами (ВР) слова и выделенные слова представляют как в режиме ТЧК, но только с использованием дополнительных правил:
в выделенных словах не должно быть смещения прописных и строчных букв;
точка может быть опущена перед выделенным словом из прописных букв, если ему предшествует разделитель, отличный от точки, строчная буква или цифра, не являющаяся „прописной цифрой”. „Прописная цифра” - это цифра, которой предшествует прописная буква или прописная цифра;
за выделенным словом из прописных букв не обязательно ставить разделитель, если за ним следует строчная буква:
прописные буквы могут быть использованы только в выделенных словах и в качестве элемента-основного-набора (подпункт 8.1.4.1.с).
В режиме резервирования слов (РЕЗ) слова и выделенные слова представляют как в режиме ТЧК, но с использованием дополнительных правил:
точка может опускаться перед зарезервированными словами (заданными в п. 9.4.1 как представления для символов языка), составленными из букв русского алфавита
БИТ БЫВ В ВЕЩ ВИД ВОЗБУД ВСЕ ВЫБ ВЫХОД ГЛОБ ДЛИН ДЛЯ ДМ ДО ЕСЛИ ЕСТЬ ИЗ ИМЕНИ ИМЯ ИНАЧЕ ИНЕС ИСТИНА КАНАЛ КОМПЛ КОН КОНЕЦ КОР КЦ ЛИБО ЛИВЫБ ЛИТ ЛОГ ЛОЖЬ ЛОК МД МОДУЛЬ НА НАЧ НАЧАЛО НЕСТЬ НИЛ ОБ ОП ОТ ОТКР ПАР ПОДВ ПОДКЛ ПОКА ПРАГМ ПРИМ ПРИО ПРИСИТ ПРОПУСК ПРОЦ ПУСТ ПУСТОЕ С СБРОС СЕМА СЕГМЕНТ СИТУАЦИЯ СКИП СЛОГ СРЕДА СТ СТРУКТ ТО Ф ФАЙЛ ФОРМАТ ЦЕЛ ЦК ЧЕРЕЗ ШАГ
и букв латинского алфавита
ACCESS AT BEGIN BITS BOOL BY BYTES CASE CHANNEL CHAR CO COMMENT COMPL DEF DO EGG ELIF ELSE EMPTY END ESAC ECCAPTION EXIT FALSE FED FI FILE FLEX FOR FORMAT FROM GO GOTO HEAP IF IN INT IS ISNT LOC LONG MODE NEST NIL OD OF ON OP OUSE OUT PAR POSTLUDE PR PRAGMAT PRIQ PROC PUB RAISE REAL REF SEMA SHORT SKIP STRING STRUCT THEN TO TRUE UNION VOID WHILE
если им предшествует разделитель, отличный от точки;
со слогом должен соприкасаться знак подчеркивания, если буквы и цифры этого слова соответствуют, в том же порядке, буквам и цифрам некоторого зарезервированного слова.
Составные представления
Некоторые представления, приведенные в п. 9.4.1, составленные из последовательности двух или более литер, не являющихся буквами (” ”, =: , :=, | : , : =:, : /«=:), являются последовательностями абстрактных литер, соответствующих этим символам.
Представление любого символа-ПОНЯТИЕ1-перед-ПОНЯТИЕМ2 является представлением для символа-ПОНЯТИЕ 1, за которым следует представление для символа-ПОНЯТИЕ2, (символы-ПОНЯТИЕ1-перед-ПОНЯТИЕМ2 являются составными обозначениями-операций, упомянутыми в подпунктах 9.4.2.2.d, е).
Другие представления
Любой символ, представление которого в подразделе 9.4 соответствует абстрактной литере, представляется этой литерой. Символ-на-десять-в-степени, символ- плюс-и-на и символ-краткое-примечание не имеют представлений.
Обмен
Представления объектов для обмена должны использовать только абстрактные литеры (с тем, чтобы ввод можно было подготавливать, а вывод интерпретировать без ссылки на конкретную реализацию). Запросы к обстановке зависят от абстрактных литер следующим образом:
да „ Т ” латинская или „ Д ” русская;
нет „ F ” латинская или ,, Н ” русская;
литера ошибки „ * ”;
пробел „
Вместо абстрактных литер для символа-на-десять-в-степени и для символа- плюс-и-на необходимо использовать литеры „ Е ” { латинская } или „ Е ” f русская } и'„ I ” { латинская } или ”И” [ русская} .
Соответствующие друг другу прописные и строчные буквы эквивалентны, когда они входят при обмене в представление любого значения, отличного от значений видов „литерный” и „вектор из литерных”.
Строковые значения, полученные в результате обмена и операции ПРЕД (REPR), могут содержать литеры, которые не соответствуют абстрактным литерам.
ИНФОРМАЦИОННЫЕ ДАННЫЕ
ИСПОЛНИТЕЛИ
В.Ц Морозов, д-р техн, наук; Г.С. Цейтин, д-р физ.-мат. наук; А.Ф. Рар; А.Н.Терехов, канд. физ.-мат. наук; Ч.Линдси; О.Е.Климова; Н.Б. Скачков; В.В. Броль; В.Б. Яковлев; И.Б. Гиндыш; Э.В. Оленье - ва; Д.Ю. Жуков; Ю.И. Карпов; ФХ. Кабалила; OJC. Александрова;.
Е.Г. Грозная
УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Постановлением Государственного комитета СССР по стандартам от 21.12.88 № 4380
Срок проверки — 1996 г., периодичность проверки — 5 лет.
ВВЕДЕН ВПЕРВЫЕ
ССЫЛОЧНЫЕ НОРМАТИВНО-ТЕХНИЧЕСКИЕ ДОКУМЕНТЫ
Обозначение НТД, на который дана ссылка |
Номер пункта, приложения |
ГОСТ 27465—87 |
Приложение 2 (п. 3.1.1) 1, 1.1.1 -1.1.4,1.1.4.1- 1.1.4.3,1.2.1,1.2.3 1.3,2.1.1,2.1.1.1- 2.1.1.3,2.1.2,2.Г.3,2.1.4.1-2.1.4.3,2.1.5,2.2,3,3.0.1,3.0.2,3.1, 3 1,3.2.1,4,4.1.1,3.3.1,3.3.2,3.4,3.5,4.1.2,4.2-4.7,4.8.1,4.8.2, 5,5.1,’5.2Л.1',5.2.1.2,5.2.2-5.2.4,5.3.1.1,5.3.2.1,5.3.2.г,5.4.1- 5.4.4,5.5,6,6-.1.1,6.2:1,6.3-6.7,7,7.1.1,7-2.1,7.2.2,73,7.4,8,9, 9,1.-9.4,9.4.1,9.4.2,10,10.1,10.13,10.1.2,10.1.3,10.2,10.2.2, 10.1.3.0 - 10.2.3.12, 10.2.4, 10.3, 10,3.1, 10.3.1.1, 10.3.1.2, 10.3.1.3-10.3.1.6,10.3.2,10.3.3.1,10.3.3,2,10.3.4,10.3.4.1.1, 10.3.4.1.2,10.3.4.2—10.3.’4.7,10.3.‘4.8.1,10.3.4.8.2,10.3.4.9, 10.3.4.10.1, 10.3.4.10.2, 10.3.5, 10.3.5.1, 10.3.6, 10.4, 10.5.1, 10.5.2 |
СОДЕРЖАНИЕ
Язык и метаязык 4
Метод описания 4
Введение 4
Прагматика 5
Синтаксис строгого языка 6
Семантика 14
Общие метаправила 18
Метаправила для видов 18
Метаправила, связанные с фразами и приведением 19
Метаправила, связанные со средами 19
Общие гиперправила 19
Синтаксис общих предикатов 19
Выполнимость предикатов 20
Синтаксис общих конструкций 21
Вычислитель и программа 22
Терминология 22
Объекты 22
Соотношения 25
Значения 26
Действия • 33
Сокращения 35
Программа 37
Синтаксис 37
Семантика 37
Предложения 38
1. Синтаксис 38
2. Семантика 39
Замкнутые предложения 39
Синтаксис 39
Последовательные предложения 40
Синтаксис 40
Семантика 42
Совместные и параллельные предложения 43
Синтаксис 43
Семантика 45
Выбирающие предложения 45
Синтаксис 47
Семантика 50
Циклические предложения 50
Синтаксис 51
Семантика 52
Описания, описатели и индикаторы 54
Описания 54
Синтаксис 54
Семантика 55
Описания видов 55
Синтаксис 55
Семантика 55
Описания приоритетов 56
Синтаксис 56
Семантика 56
Описания идентификаторов 56
Синтаксис 57
Семантика 5 8
Описания операций 59
Синтаксис 59