конец.}
Синтаксис
совместное предложение в СРЕДЕ
сильно выдающее пустое значение {5D, 551 а};
УПАКОВКА образа основ
сильно выдающих пустое значение в СРЕДЕ {bl.
образ основ ПРИВОДИМЫХ в СРЕДЕ {a, b, с, d, 34g}:
если ПРИВОДИМОЕ уравнивает
ПРИВОДИМОЕ! и ПРИВОДИМОЕ2 {32е},
основа в СРЕДЕ ПРИВОДИМАЯ! {32d},
знак а также {94f},
основа в СРЕДЕ ПРИВОДИМАЯ2 {32d} либо образ основ ПРИВОДИМЫХ! в СРЕДЕ {Ь}.
параллельное предложение в СРЕДЕ
сильно выдающее пустое значение {5D, 551а]-:
знак параллельно {94f}, УПАКОВКА образа основ сильно выдающих пустое значение в СРЕДЕ {Ь}.
совместное предложение в СРЕДЕ
сильно выдающее МАССИВ из ВИДА {5D, 551а}; если (МАССИВ) есть (вектор),
УПАКОВКА образа основ
сильно выдающих ВИД в СРЕДЕ {Ь};
если (МАССИВ) есть (вектор МАССИВОВ1), УПАКОВКА образа основ
сильно выдающих МАССИВ1 из ВИДА в СРЕДЕ {Ь}; УПАКОВКА ПУСТО.
совместное предложение в СРЕДЕ сильно рыдающее структуру содержащую '.ПОЛЯ ПОЛЕ в себе {5D, 551а}: УПАКОВКА образа !ПОЛЕЙ ПОЛЯ в СРЕДЕ {f}.
образ !ПОЛЕЙ ПОЛЯ в СРЕДЕ <е, f}:
образ !ПОЛЕЙ в СРЕДЕ { f, g}, знак а также {94f}, образ ПОЛЯ в СРЕДЕ {g}.
{ПОЛЕ :: СЛОВО для выборки ВИДА.}
образ СЛОВА для выборки ВИДА в СРЕДЕ {f}: основа в СРЕДЕ сильно выдающая ВИД {32d}.
* запись структуры : совместное предложение в СРЕДЕ сильно выдающее структуру содержащую !ПОЛЯ ПОЛЕ в себе {е}.
* запись массива : совместное предложение
в СРЕДЕ сильно выдающее МАССИВ из ВИДА {d}.
* запись составного : совместное предложение
в СРЕДЕ сильно выдающее СОСТАВНОЕ {d, е}.
к)* вакуум : УПАКОВКА ПУСТО.
{
Ь) х : = 1,у:= 2 d) (1,2) (в [ ] вещ (1,2))
Примеры:а) (х =1, у :=2)
с
f) 1,2
) пар (задача 1, задача2)е) (1,2) (в компл (1,2))
{Записи-структур должны содержать по крайней мере два образа- ПОЛЯ.
Записи-массивов содержат нуль, две или более составляющих основ. Одно значение тоже можно сделать массивом, например [1 : 1] цел v := 123, но при этом используется приведение, называемое векторизацией (6.6.).}
Семантика
Исполнение совместного-предложения-выдающего-пустое-значение или параллельного-предложения-в’ыдающего-пустое-значение состоит в совместном исполнении его составляющих основ и выдает пустое.
Выдача W совместного-предложения-выдающего-СОСТАВНОЕ С определяется следующим образом:
Если прямой наследник из С есть вакуум, то
-['СОСТАВНОЕ' есть 'МАССИВ ИЗ ВИДА',} каждая граничная пара в паспорте выдачи W равна (1,0) {, и имеется один скрытый элемент, значение которого не существенно};
иначе
пусть V], ..., Vm будут {совместными} выдачами составляющих основ из С;
Случай А: 'СОСТАВНОЕ' есть 'структура содержащая ’ПОЛЯ в себе':
V) ,.... Vm, взятые в их порядке, служат полями W;
Случай В: 'СОСТАВНОЕ' есть 'вектор из ВИДА1':
• W состоит из
паспорта ((1,ш)),
V15...,v„,;
Для i=l, ..., m
Vj — элемент, выбираемый по индексу (і) в W;
Случай С: 'СОСТАВНОЕ есть вектор МАССИВОВ из ВИДА2':
требуется, чтобы паспорта значений V) ,...,Vm были идентичны;
пусть паспортом {, например,} Vj будет ((11, Uj),..., (ln, un));
W состоит из
паспорта ((1, m), (li,Uj), ..., (ln, un));
элементов этих Vj,..., Vm;
Для і = 1,..., m,
• элементом, выбираемым по индексу (і, ij, іп) в W, будет элемент, выбираемый по (ij, ..., in) в Vj.
{Отметим, что в [„] лит группа = („абв”, „где”) паспортом трехмерной выдачи W будет ((1, 2), (1, 1), (1, 3)), поскольку основы „абв” и „где” сначала векторизуются (6.6.), так что V) и V2 имеют паспорта ((1,1), (1,3)).}
3.4 Выбирающие предложения
{Выбирающие-предложения позволяют осуществлять динамический выбор среди различных путей вычисления. Выбор среди альтернатив (глав- ной-части-ВЫБИРАЮЩЕГО-предложения и продолжения-ВЫБИРАЮЩЕГО- предложения) определяется результатом проверки некоторого истинностного значения, целого числа или вида. Подвергаемое проверке значение вычисляется выясняющим-предложением прежде, чем делается выбор.
Всякое выбирающее-по-логическому-предложение (или условное-пред- ложение) имеет форму
(х>0 1x1 0) в „кратком” оформлении, илиесли х > 0 то х иначе 0 все в оформлении „стиля 1”;
х > 0 — его выясняющее-предложение, то х — главная-часть-ВЫБИРАЮ- ЩЕГО-предложения, иначе 0 — продолжение-ВЫБИРАЮЩЕГО-предложе- ния; так как выбираюшие-предложения полностью замкнуты, то каждая из этих трех составляющих может иметь синтаксическую структуру кортежа. Выбирающее-по-логическому-предложению можно также укоротить до (х < 01 х := - х) или
если х<0тох := — х все;
где опущенное продолжение-ВЫБИРАЮЩЕГО-предложения должно пониматься как иначе пропуск. С другой стороны, выбор можно повторить, написав:
(x>0ll+xl:x<0ll- х I 1) или
если х > 0 то 1 + х инее х < 0 то 1 - х иначе 1 все,
и т.д., что должно пониматься как
(х>01 1 +хІ (х<01 1 -ХІ 1)).
ВАРИАНТНЫЕ-предложения, осуществляющие выбор по целому числу или виду, отличаются тем, что главная-часть-ВАРИАНТНОГО-предложения составлена из основ. Общий образец для них таков:
( 1 ,..., 1 ) или
выб в , .... либо быв
Здесь выбор также можно повторить, используя ливыб.
Компонентами выбирающего-по-целому-предложения (или вариантно- го-предложения) служат просто основы, но их должно быть по крайней мере две: выбор среди этих основ следует их текстуальному порядку.
Пример:
проц пуст работать, отдыхать, развлекаться;
выб цел день; чит (день); день
в работать, работать, работать, работать, работать, отдыхать, развлекаться
либо печ ((„дня с номером”, день, „ нет в неделе”))
быв
В выбирающем-по-ПРЕДСТАВИТЕЛЮ-предложении (или сопоставляю- щем-предложении), которое проверяет виды, каждый ВЫБИРАЮЩИЙ-ва- риант имеет форму (описатель идентификатор) : основа или (описатель): основа. Специфицируемый этим описателем вид сравнивается с (текущим) видом проверяемого значения; упомянутый идентификатор, если он есть, обеспечивает с полной надежностью в отношении синтаксической проверки вида доступ к значению, подвергнутому проверке, внутри данной основы. Использование вида 'ПРЕДСТАВИТЕЛЬ' обеспечивает требуемую свободу для вида проверяемого значения; кроме того, 'ПРЕДСТАВИТЕЛЬ' должен содержать вид каждой из спецификаций, иначе соответствующий ВЫБИРАЮЩИЙ-вариант не будет никогда выбран.
Пример:
вид мальчик = ст (цел возраст, вещ рост),
вид девочка = ст (цел возраст, вещ вес);
проц об (мальчик, девочка) новорожденный;
выб новорожденный в
(мальчик джон) : печ (рост от джон) ,
(девочка мэри) : печ (вес от мэри)
все.}
{Иерархия блоков в условном-предложении выглядит так:
и аналогично для остальных типов выбора. Таким образом, среда и окружение выясняющего-предложения продолжают иметь силу как в главной-ча- сти-ВЫБИРАЮЩЕГО-предложения, так и в продолжении-ВЫБИРАЮЩЕГО- предложения. Однако обратная передача управления из главной-части-или продолжения-ВЫБИРАЮЩЕГО-предложения невозможна, так как выясняю- щее-предложение не может содержать определений-метки (, за исключением тех, которые содержатся во входящих в него ЗАКРЫТЫХ-предложениях) . }
Синтаксис
ВЫБИРАЮЩЕЕ :: выбирающее по логическому; ВАРИАНТНОЕ.
ВАРИАНТНОЕ :: выбирающее по целому;
выбирающее по ПРЕДСТАВИТЕДЮ.
ВЫБИРАЮЩЕЕ предложение в СРЕДЕ1
ПРИВОДИМОЕ {5D, 551а, A341h, А349а }:
старт ВЫБИРАЮЩЕГО ОФОРМЛЕННЫЙ {91а,а}, ОФОРМЛЕННЫЙ состав ВЫБИРАЮЩЕГО предложения ПРИВОДИМЫЙ в СРЕДЕ1 {Ь}, финиш ВЫБИРАЮЩЕГО ОФОРМЛЕННЫЙ {91е, -}.
ОФОРМЛЕННЫЙ состав выбирающего по ВИДУ
предложения ПРИВОДИМЫЙ в СРЕДЕ 1 {а, 1}:
определяющее СЛОЙ2 выясняющее предложение выдающее ВИД в СРЕДЕ 1 {с, -},
ОФОРМЛЕННЫЕ альтернативы выбирающего по ВИДУ предложения ПРИВОДИМЫЕ в СРЕДЕ1 с СЛОЕМ2 {d}.
определяющее новые 7ОПИСАНИЯ2 выясняющее
предложение выдающее ВИД в СРЕДЕ1 {b, 35g}:
кортеж с 7ОПИСАНИЯМИ2 раскрыто выдающий
ВИД в СРЕДЕ1 с новыми 7ОПИСАНИЯМИ2 {32b}.
ОФОРМЛЕННЫЕ альтернативы ВЫБИРАЮЩЕГО
предложения ПРИВОДИМЫЕ в СРЕДЕ2 {Ь}:
ОФОРМЛЕННАЯ главная часть ВЫБИРАЮЩЕГО
предложения ПРИВОДИМАЯ в СРЕДЕ2 {е};
если ПРИВОДИМОЕ уравнивает
ПРИВОДИМОЕ! и ПРИВОДИМОЕ? -С32е}, ОФОРМЛЕННАЯ главная часть ВЫБИРАЮЩЕГО предложения ПРИВОДИМАЯ! в СРЕДЕ2 {е}, ОФОРМЛЕННОЕ продолжение ВЫБИРАЮЩЕГО предложения ПРИВОДИМОЕ? в СРЕДЕ? {1}. е) ОФОРМЛЕННАЯ главная часть ВЫБИРАЮЩЕГО предложения ПРИВОДИМАЯ в СРЕДЕ2 { d}: вход в собственно ВЫБИРАЮЩЕЕ ОФОРМЛЕННЫЙ {91b,-}, собственно выбор ВЫБИРАЮЩЕГО ПРИВОДИМЫЙ в СРЕДЕ? {f, g, h}.
f) собственно выбор выбирающий по логическому
ПРИВОДИМЫЙ в СРЕДЕ2 {е}:
определяющее СЛОЙЗ последовательное предложение ПРИВОДИМОЕ в СРЕДЕ2 {32а}-. g) собственно выбор выбирающего по целому ПРИВОДИМЫЙ в СРЕДЕ? <е>:
образ основ ПРИВОДИМЫХ в СРЕДЕ2 {33b}.
собственно выбор выбирающий по ПРЕДСТАВИТЕЛЮ
ПРИВОДИМЫЙ в СРЕДЕ2 {е, h}-:
выбирающий по ПРЕДСТАВИТЕЛЮ вариант
ПРИВОДИМЫЙ в СРЕДЕ2
если ПРИВОДИМОЕ уравнивает
ПРИВОДИМОЕ! и ПРИВОДИМОЕ? {32е} выбирающий по ПРЕДСТАВИТЕЛЮ вариант ПРИВОДИМЫЙ! в СРЕДЕ? {і}, знак а также {94f}, собственно выбор выбирающий по ПРЕДСТАВИТЕЛЮ ПРИВОДИМЫЙ? в СРЕДЕ? {h}.
выбирающий по ПРЕДСТАВИТЕЛЮ вариант
ПРИВОДИМЫЙ в СРЕДЕ? {h}: определяющая СЛОЙЗ спецификация
ЗНАЧЕНИЯ в СРЕДЕ? с СЛОЕМЗ {j, к, -У, если ЗНАЧЕНИЕ служит ПРЕДСТАВИТЕЛЕМ {64b}, основа в СРЕДЕ2 с СЛОЕМЗ ПРИВОДИМАЯ {3?d} {Здесь СЛОЙЗ :: новое СЛОВО для ВИДА; новое ПУСТО.} j) определяющая новое СЛОВОЗ для ВИДА спецификация ВИДА в СРЕДЕЗ {і}:
упакованное кратким определяющее новое СЛОВОЗ для ВИДА задание аргумента в СРЕДЕЗ {541 е}, знак двоеточие {94f}.
определяющая новое ПУСТО спецификация
ЗНАЧЕНИЯ в СРЕДЕЗ {і}:
упакованный кратким формальный описатель
ЗНАЧЕНИЯ в СРЕДЕЗ {46b}, знак двоеточие {94f}
.ОФОРМЛЕННОЕ продолжение ВЫБИРАЮЩЕГО
предложения ПРИВОДИМОЕ в СРЕДЕ2 {d}:
выход собственно ВЫБИРАЮЩЕГО ОФОРМЛЕННЫЙ {9 Id, -}, определяющее СЛОЙЗ последовательное
предложение ПРИВОДИМОЕ в СРЕДЕ2 {32а};
продолжатель ВЫБИРАЮЩЕГО ОФОРМЛЕННЫЙ {91 с, -}, ОФОРМЛЕННЫЙ состав ВЫБИРАЮЩЕГО2
предложения ПРИВОДИМЫЙ в СРЕДЕ2 {Ь},
если ВЫБИРАЮЩЕЕ2 может следовать за ВЫБИРАЮЩИМ {т}.
ЕСЛИ выбирающее по ВИДУ2 может следовать
за выбирающим по ВИДУ 1 {1}:
если (ВИДІ) есть (ОБЫЧНОЕ),
ЕСЛИ (ВИД2) есть (ВИДІ);
если (ВИДІ) начинается с (объединение),
ЕСЛИ (ВИД2) начинается с (объединение).
п)* выбирающее предложение ДЕЙСТВУЮЩЕЕ:
ВЫБИРАЮЩЕЕ предложение ДЕЙСТВУЮЩЕЕ {а}.
о)* условное предложение ДЕЙСТВУЮЩЕЕ:
выбирающее по логическому предложение ДЕЙСТВУЮЩЕЕ {а}.
р)* вариантное предложение ДЕЙСТВУЮЩЕЕ:
выбирающее по целому предложение ДЕЙСТВУЮЩЕЕ {а}.
q) * сопоставляющее предложение ДЕЙСТВУЮЩЕЕ:
выбирающее по ПРЕДСТАВИТЕЛЮ предложение
ДЕЙСТВУЮЩЕЕ {а}
{Примеры:
а) (х >01x1 о) •
выб і в принстон, Гренобль либо финиш быв •
выбйіг в (цел і) : печ (і), (вещ) : печ („нет”) быв
Ь)х>0ІхІ0 с) х > 0 • і • uir
Iх • I xl 0
I x ■
в принстон, Гренобль •
в (цел і) : печ (і), (вещ) : печ („нет”)
X g) принстон, Гренобль
(цел і) : печ (і), (вещ) : печ („нет”)
(цел і) : печ (i) j) (цел і) :
(вещ) :
либо финиш • I :х < 0 I — х I 0}
{Правило d показывает, почему 'ПРИВОДИМО выдающие ЗНАЧЕНИЕ' должны „уравниваться”. Если, например, альтернативы-ВЫБИРАЮЩЕГО- предложения крепкие, то хотя бы одно из его главной-части-ВЫБИРАЮЩЕ- ГО-предложения или продолжения-ВЫБИРАЮЩЕГО-предложения должно быть крепким, в то время как другое может быть сильным. Так, например, в (plxl пропуск) + (pl пропуск 1у) условное-предложение (plх! пропуск) уравнивается, делая I х крепким, а I пропуск сильным, в то время как (р I пропуск I у) уравнивается, делая I пропуск сильным, а 1у крепким. Контрпример (р I пропуск I пропуск) + у показывает, что обе компоненты не могут быть сильными, поскольку иначе обозначение-операции + было бы неидентифицируемо.}
Семантика
Выдача W состава-ВЫБИРАЮЩЕГО-предложения С в окружении Е1 определяется следующим образом:
пусть Е2 — окружение, устанавливаемое {3.2.2.Ь} вокруг Е1 согласно выясняющему-предложению этого С;
пусть V — выдача этого выясняющего-предложения в Е2;
W — выдача сцены, „выбранной” {b} по V из С в Е2;
требуется, чтобы по области действия выдача W не была младше Е1.
Сцена S, „выбранная” по значению V из состава-ВЫБИРАЮЩЕГО- предложения-выдающего-ЗНАЧЕНИЕ С в окружении Е2, определяется следующим образом:
Случай А: 'ВЫБИРАЮЩЕЕ' есть 'выбирающее по логическому' и V есть истина:
S — составляющая главная часть-ВЫБИРАЮЩЕГО-пред- ложения этого С в Е2;
Случай В: 'ВЫБИРАЮЩЕЕ' есть 'выбирающее по целому' и 1 < V < п где п — число составляющих основ составляющего собствен- но-выбора-ВЫБИРАЮЩЕГО этого С:
S есть V-я такая основа в Е2;
Случай С: 'ВЫБИРАЮЩЕЕ' есть 'выбирающее по ПРЕДСТАВИТЕЛЮ' и V приемлемо для {2.1.3.6.d} 'ЗНАЧЕНИЯ2'какой-нибудь составляющей спецификации-ЗНАЧЕНИЯ2 D этого С {; если таких составляющих спецификаций несколько, то не определено, какая из них выбирается в качестве D}:
S основа, следующая за этим D в некотором {нелокализующем (3.2.2.Ь) } окружении, устанавливаемом вокруг Е2 согласно D с V;