Иногда, когда контекст требует этого явно, согласованная подстановка распространяется менее чем на законченный отрывок текста. {Например, во введении к п.2.1.1.2 есть несколько вхождений „'ЗНАЧЕНИЕ'”, причем два из них служат для того, чтобы обозначать конкр'етные (и разные) про­топонятия, выписанные полностью, а другие, очевидно, используют, чтобы обозначать различные элементы из класса терминальных метапорождений некоторого „ЗНАЧЕНИЯ”.}

  1. Если протопонятие (гиперпонятие) Р составлено конкатенацией про­топонятий (гиперпонятий) А, В и С с возможно пустыми А и С, то Р „со­держит” В на месте, определяемом в Р длиной А. Так, например, 'абвгдевгжз' содержит 'вг' на третьем и седьмом местах.}Протопонятие Р2, будучи протопонятием, обозначаемым гиперпоня­тием Н2, „заложено” в протопонятие Р1, если Р2 или какой-нибудь его эквивалент {2.1.1.2.а} содержится {Ь} на некотором месте в Р1, но не со­держится ни на каком месте в любом другом {промежуточном]- протопо­нятии РЗ, также содержащемся в Р1 и таком, что Н2 может обозначать и это РЗ.

{Так, например, 'ВИД', заложенный в 'замкнутое предложение выда­ющее имя вещественного' есть 'имя вещественного', а не ’вещественное'; кроме того, в вид (2.1.1.2.Ь), специфицируемый описателем ст (вещ а, ст (лог Ь, лит с) d) , заложены только два 'ПОЛЯ'.}

  1. Парапонятия.

{„Парапонятия” введены в данном стандарте, чтобы облегчить рас­смотрение конструктов с определенными прообразами. Парапонятие - это правильная фраза (русского языка), обозначающая конструкты (1.1.3.2.е) ; смысл парапонятия не обязательно тот, который можно найти в словаре, его можно вывести из приведенных ниже правил.}

  1. „Парапонятие” Р есть {не заключенное в апострофы]- гиперпонятие, используемое в тексте данного стандарта, чтобы „обозначать” любой кон­структ, прообраз О которого удовлетворяет следующему условию;

• рассматриваемое как гиперпонятие {, т.е. как если бы оно было заключено в апострофы,]-Р обозначает {1.1.4.1 .а]-некоторую „абстрак­цию” {Ь} прообраза О.

{Например, парапонятие „натуральное-число” могло бы обозначать конструкт, имеющий представление 02, поскольку если бы оно было в апострофах, то обозначало бы абстракцию понятия 'натуральное число', яв­ляющегося прообразом данного конструкта. Однако то же представление можно было бы описать и как последовательность-десятичных-цифр и тогда оно было бы прямым наследником этого натурального-числа.}

{Чтобы было легче выделять парапонятия среди других гиперпонятий, они не заключены в апострофы и снабжены дефисами там, где иначе были бы пробелы.}

Изменение по роду, числу и/или падежу слов, составляющих парапоня­тия {, рассматриваемые в качестве конструкций русского языка}, не вле­чет за собою изменения смысла этих парапонятий. {Таким образом, вхож­дение парапонятия в какое-нибудь предложение в тексте настоящего стан­дарта подчинено правилам согласования слов в предложениях русского языка.}

Малый синтаксический знак в начале парапонятия часто {, например, в начале предложения,} заменен {, чтобы улучшить вид текста,} соответству­ющим большим синтаксическим знаком без изменения смысла этого па­рапонятия {; например, „Идентификатор” имеет тот же смысл, что и „идентификатор”}.

  1. Протопонятие Р2 есть „абстракция” протопонятия Р1, если

  1. Р2 есть абстракция понятия, порождающее правило для которого начинается со звездочки, а Р1 - одна из альтернатив этого правила.

{например, 'ограничение' (5.3.2.1.h) есть абстракция любого из понятий, обозначаемых гиперпонятиями, 'отрезок в СРЕДЕ', 'ин­декс в СРЕДЕ', 'возможная сдвинутая нижняя граница в СРЕДЕ’ , или

  1. в Р1 заложено протолонятие РЗ, обозначаемое одним из „опускае­мых гиперпонятий”, перечисленных ниже в п. с), а Р2 ■ абстракция протопонятия, состоящего из Р1 без этого заложенного РЗ

{например, 'старт выбирающего по логическому' есть абстракция понятий 'краткий старт выбирающего по логическому' и 'выделен­ный старт выбирающего по логическому' (с опущенным 'ОФОРМ­ЛЕННОЕ' из 9.1.1.а) }, или

  1. Р2 эквивалентно {2.1.1.2.а} Р1

{например, 'символ выделенное начало' есть абстракция протопо­нятия 'символ выделенное начало'}.

{Чтобы привести пример, включающий все три правила, заметим, что 'определяющий индикатор выдающий объединение целого вещественного воедино' есть абстракция некоторого 'определяющего букву а идентифи­катора в СРЕДЕ выдающего объединение вещественного целого воедино' (4.8.1.а). 'Краткий старт выбирающего по объединению целого веществен­ного воедино' не является абстракцией понятия 'краткий старт выбираю­щего по объединению целого вещественного логического воедино’, потому что 'логического', которое, очевидно, опущего, не есть 'ЗНАЧЕНИЕ', зало­женное в это понятие.}

  1. Упомянутые выше в разд. Ь) „опускаемые гиперпонятия” следую­щие :

„ОФОРМЛЕННОЕ” • „НОМЕР” • „ЛОКАЛИЗУЮЩИЙ” • „ПРИМЕНЯЮ­ЩИЙ” • „ЛЮБОЙ” • „ПРИВОДИМО” • „ЗНАЧЕНИЕ” • „для ЗНАЧЕ­НИЯ” • „выдающее ИМЯ ПРОВИДА” • „для метки” • „для процеду­ры” • „вида ПРОВИД” • „в СРЕДЕ” • „!ПАРЫ” • „с 7ОПИСАНИЯМИ 7МЕТКАМИ” • „через 7ОПИСАНИЯ ?МЕТКИ” • „определяющее СЛОЙ” • „ОБОЗНАЧЕНИЕ” • „как ИМЯ ПРОВИДА”.

{Какое из нескольких возможных понятий или символов служит про­образом конструкта, обозначаемого данным парапонятием, выясняют из контекста, в котором это парапонятие встречают. Например, когда гово­рится о формальном-описателе какого-то описания-тождества, его прооб­разом будет некоторое понятие, обозначаемое гиперпонятием 'формаль­ный описатель имени вещественного в СРЕДЕ', если терминальное порож­дение (1.1,3.2.f) этого описания-тождества есть имя вещ х= «лок вещ.}

{Так как всякое парапонятие обозначает некоторый конструкт, то все определенные для конструктов технические термины можно без до­полнительной формализации применять и к парапонятиям.}

  1. Если два парапонятия Р и Q обозначают два конструкта S и Т соот­ветственно, то Р называют „составляющим” Q, если S — наследник Ти нет такого {йромежуточного конструкта} U, что

  1. S — наследник U,U — наследник Т и

  2. Р или Q может {в равной мере} обозначать U.

{Так например, a (S1) — это составляющий операнд формулы aX(b+2T(i + j)) (Т) , a b (S2) — нет, поскольку это наследник промежуточ­ной формулы b + 21 (і + j) (U), которая сама есть наследник Т. Аналогично (b + 2T(i + j)) — составляющее замкнутое-предложение формулы Т, а зам- кнутое-предложение (i + j) — нет, поскольку это наследник промужеточно- го замкнутого-предложения. Однако (i + j) — составляющее замкнутое- предложение-выдающее-целое формулы Т, так как указанное промежуточ­ное замкнутое-предложение фактически является замкнутым-предложе- нием-выдающим-вещественное.


операнд
а


операнд

(b + 2t (i + j))


формула

а X (Ь + 21 (i + j))



замкнутое-предложение (-выдающее-вещественное)

(b + 2t (i + j))

формула b + 21 (i + j)

о

операнд b

перанд

21 (i + j)

ф

операнд

2

ормула

операнд
(i + j)

замкнутое-предложение (-выдающее-целое) (i + j) }

  1. Неопределенности.

  1. Если что-то оставлено ,,не определенным” или о чем-то сказано, что оно „не определено”, то это означает, что оно не определено лишь настоя­щим стандартом и для его определения надо принять в расчет какую-нибудь информацию, находящуюся вне этого стандарта.

{Необходимо отличать выдачу неопределенного значения (, после чего исполнение продолжается с возможно непредсказуемыми результатами,) и полной неопределенности дальнейшего исполнения. Действия, которые следует предпринять в последнем случае, оставляются на усмотрение реа­лизатора. Это может быть одна из форм продолжения (, не обязательно одинаковая в разных реализациях,) или некоторая форма прерывания (2.1.4.3.h). осуществляемая какой-нибудь проверкой во время работы ірограммы.}

  1. Если „требуется”, чтобы какое-то условие удовлетворялось при не­котором исполнении, то дальнейшее исполнение не определено, если это условие не удовлетворяется.

  2. „Осмысленная” программа - это программа {2.2.1 .а}, исполнение которой определено настоящим стандартом.

  1. Общие метаправила

    1. Метаправила для видов

А) ВИД :: ПРОСТОЕ; СОСТАВНОЕ; ИМЯ ВИДА; ПРОЦЕДУРА; ПРЕД­СТАВИТЕЛЬ; ЦИ определение ВИДА; использование ЦИ.

В) ПРОСТОЕ :: ЧИСЛОВОЕ; логическое; литерное.

2) ЧИСЛОВОЕ :: 7РАЗМЕРНОЕ целое; 7РАЗМЕРНОЕ вещественное.

О) ’РАЗМЕРНОЕ : : длинное 7ДЛИННОЕ; короткое 7КОРОТКОЕ; ПУСТО. Є) 7ДЛИННОЕ :: длинное 7ДЛИНН0Е; ПУСТО.

й) ’КОРОТКОЕ :: короткое’КОРОТКОЕ; ПУСТО.

1) ПУСТО::.

Т) СОСТАВНОЕ :: структура содержащая !ПОЛЯ в себе; 7ПОДВИЖНЫЙ МАССИВ из ВИДА.

і) !ПОЛЯ::ПОЛЕ; !ПОЛЯПОЛЕ.

Г) ПОЛЕ :: СЛОВО {942А} для выборки ВИДА.

.<) ’ПОДВИЖНОЕ :: подвижное; ПУСТО.

L) МАССИВ :: вектор; МАССИВ векторов.

И) ИМЯ ::имя; временное имя.

  1. ПРОЦЕДУРА :: процедура 7ПАРАМЕТРИЗОВАННАЯ вырабатывающая ЗНАЧЕНИЕ.

  2. ’ПАРАМЕТРИЗОВАННАЯ .: с! ПАРАМЕТРАМИ; ПУСТО.

7) ЧІАРАМЕТРЫ :: ПАРАМЕТР; !ПАРАМЕТРЫ ПАРАМЕТР.

Q) ПАРАМЕТР :: параметр вида ВИД.

  1. ЗНАЧЕНИЕ :: ВИД; пустое значение.

  2. ПРЕДСТАВИТЕЛЬ :: объединение ’ОБЫЧНЫХ воедино.

I ЮБЫЧНЫЕ :: ОБЫЧНОЕ; ’ОБЫЧНЫЕ ОБЫЧНОЕ.

  1. ОБЫЧНОЕ :: ПРОСТОЕ; СОСТАВНОЕ; имя ВИДА; ПРОЦЕДУРА;

пустое значение

  1. .ЦИ::ци НОМЕР.

  2. НОМЕР::!; НОМЕР.

  1. Метаправила, связанные с фразами и приведением

А) ЗАКРЫТОЕ :: замкнутое; совместное; параллельное; ВЫБИРАЮЩЕЕ {34А}; циклическое.

  1. ДЕЙСТВУЮЩЕЕ :: в СРЕДЕ ПРИВОДИМО выдающее ЗНАЧЕНИЕ.

  2. ПРИВОДИМО : сильно; крепко; раскрыто; слабо; мягко.

1.2.3. Метаправила, связанные со средами

  1. СРЕДА:: СЛОЙ; СРЕДА с СЛОЕМ.

  2. СЛОЙ :: новые 7ОПИСАНИЯ 7МЕТКИ.

  3. 7ОПИСАНИЯ :: ! ОПИСАНИЯ; ПУСТО.

  4. 1ОПИСАНИЯ :: ОПИСАНИЕ; ЮПИСАНИЯ ОПИСАНИЕ.

Е) ОПИСАНИЕ :: СЛОВО {942AJ для ВИДА; ИНФИКС {942F} для приоритета ПРИОРИТЕТ; ИНДИКАНТ {942DJ-для ЗНАЧЕНИЯ НО­МЕР; ИНФИКС {942F3- для ДВУМЕСТНОЙ; ПРЕФИКС {942К} для ОДНОМЕСТНОЙ.

F) ПРИОРИТЕТ :: I; II; III; III I; III II; III III; III III 1; III III II; III III III. G) ОДНОМЕСТНАЯ :: процедура с ПАРАМЕТРОМ вырабатывающая ЗНА­ЧЕНИЕ.

Н) ДВУМЕСТНАЯ :: процедура с ПАРАМЕТРОМ ПАРАМЕТРОМ2 выраба­тывающая ЗНАЧЕНИЕ.

Г) '’МЕТКИ :: 'МЕТКИ; ПУСТО.

  1. !МЕТКИ :: МЕТКА; !МЕТКИ МЕТКА.

  2. МЕТКА :: СЛОВО {942А}для метки.

  1. Общие г ипер правила

{Предикаты используют в синтаксисе, чтобы обеспечить в деревьях по­рождения соблюдение определенных ограничений типа того, что каждый ис- пользующий-индикатор должен идентифицировать некоторый однозначно находимый определяющий-индикатор. Их более скромная цель состоит в уменьшении числа гиперправил при помощи группировки нескольких сход­ных случаев в качестве альтернатив одного правила. В этих случаях с по­мощью предикатов можно выяснить, какую из альтернатив применить.}

  1. Синтаксис общих предикатов

  1. ПОНЯТИЕ :: ЛИТЕРА; ПОНЯТИЕ ЛИТЕРА.

  2. ЛИТЕРА :: а; б: в; г; д; е; ж; з; и; й; к; л; м; н; о; п; р; с; т; у;

ф; х; ц; ч; ш; щ; ъ; ы; ь; э; ю; я; I.

  1. 7ПОНЯТИЕ :: ПОНЯТИЕ; ПУСТО.

  2. УТВЕРЖДЕНИЕ :: ПОНЯТИЕ; (7ПОНЯТИЕ) 7ПОНЯТИЕ2;

УТВЕРЖДЕНИЕ (7ПОНЯТИЕ1) 7ПОНЯТИЕ2.

  1. ЕСЛИ :: если; если неверно что.

  1. если истина : ПУСТО.

  2. если неверно что ложь : ПУСТО.

  3. если УТВЕРЖДЕНИЕ! и УТВЕРЖДЕНИЕ2:

если УТВЕРЖДЕНИЕ!, если УТВЕРЖДЕНИЕ2.

  1. если УТВЕРЖДЕНИЕ! или УТВЕРЖДЕНИЕ2: если УТВЕРЖДЕНИЕ!; если УТВЕРЖДЕНИЕ?.

  2. если неверно что УТВЕРЖДЕНИЕ! и УТВЕРЖДЕНИЕ?: если неверно что УТВЕРЖДЕНИЕ 1; если неверно что УТВЕРЖДЕНИЕ?.

  3. если неверно что УТВЕРЖДЕНИЕ! или УТВЕРЖДЕНИЕ?: если неверно что УТВЕРЖДЕНИЕ!, если неверно что УТВЕРЖДЕНИЕ?.

  4. ЕСЛИ (7ПОНЯТИЕ1) есть (7ПОНЯТИЕ2) :

ЕСЛИ (7ПОНЯТИЕ1) начинается с (7ПОНЯТИЯ?) {h, i,jl

и (7ПОНЯТИЕ?) начинается с (7ПОНЯТИЯ1) {h, і, jj-.

  1. ЕСЛИ (ПУСТО) начинается с (ПОНЯТИЯ) {g, jj- :

ЕСЛИ ложь {b,-J-.

1) ЕСЛИ (7ПОНЯТИЕ) начинается с (ПУСТО) {g, j}:

ЕСЛИ истина {а, -J-.

j) ЕСЛИ (ЛИТЕРА1 7ПОНЯТИЕ1) начинается с (ЛИТЕРЫ? 7ПОНЯ- ТИЯ?) {g,j,mj-;

ЕСЛИ (ЛИТЕРА 1) совпадает с (ЛИТЕРОЙ?) в (абвгдежзийклмнопрстуфкцчшщьыъэюя!) {k, 1, -J- и (ПОНЯТИЕ!) начинается с (ПОНЯТИЯ?) {h, і, j}. к) если (ЛИТЕРА) совпадаете (ЛИТЕРОЙ) в (ПОНЯТИИ) {j}: если истина {aj-

  1. если неверно что (ЛИТЕРА 1) совпадает с (ЛИТЕРОЙ?) в (ПОНЯТИИ)

<j>-'

если (ПОНЯТИЕ) содержит (ЛИТЕРУ 1 7ПОНЯТИЕ ЛИТЕРУ?) {mJ- или (ПОНЯТИЕ) содержит (ЛИТЕРУ? 7ПОНЯТИЕ ЛИТЕРУ1) {mJ-, m) ЕСЛИ (ЛИТЕРА 7ПОНЯТИЕ) содержит (ПОНЯТИЕ) {1, mJ-

ЕСЛИ (ЛИТЕРА 7ПОНЯТИЕ) начинается с (ПОНЯТИЯ) {j J-

или (7ПОНЯТИЕ) содержит (ПОНЯТИЕ) {m, nJ-.

п) ЕСЛИ (ПУСТО) содержит (ПОНЯТИЕ) {mJ-:

ЕСЛИ ложь {b,-J-.

{Малые синтаксические знаки ,,(”и„)” используют, чтобы простым способом обеспечить однозначное применение этих предикатов. J-

  1. ?. Выполнимость предикатов

Всякий „предикат” есть протопонятие, начинающееся с 'если'или 'если неверно что' {объединяемых в 'ЕСЛИ'І-. Для каждого предиката Р либо можно породить одно или несколько деревьев порождения {1.1.3.?.fJ- {, каждое из которых невидимо, J- и тогда Р „выполняется”, либо нельзя породить никакого дерева порождения {, поскольку каждая попытка по­родить какое-нибудь из них заводит в тупик, J-и тогда Р „не выполняется”.

{Например, предикат 'если (аб) есть (аб)' выполняется. Его дерево порождения можно изобразить так:если (аб) есть (аб) '

'если (аб) начинается с (аб) и (аб) начинается с (аб)

I

I ;I

'если (аб) начинается с (аб)' 'если (аб) начинается с, (аб)

(далее одинаково

с левой ветвью)