Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

FLIDE / tgrammar

.txt
Скачиваний:
6
Добавлен:
28.06.2014
Размер:
20.71 Кб
Скачать
//Грамматика FLOGOL Версия: 78
Секция Параметры
//Ид Параметра Имя Комментарий
@Тип Ар Арифметическое
@Тип Лог Логическое
@Тип Рел Реляционное
@Тип СпПар Список параметров
@Тип СпИнд Список индексов
@Тип МножЗнач Множество значений
@Тип Терм Терм
@Тип Формула Формула
@Тип Дом Доменное
@Тип СпЗнач Список значений
Секция Схемы
//Имя Имя в программе Сжатое описание Комментарий Тип ТипПерем Код
Выр(@Тип) @Тип @ТипКоммент 1 1
Преф(Ар) Преф Префикс АрВыр 3 3
Инф(Ар) Инф Инфикс АрВыр 4 4
Преф(Лог) Преф Префикс ЛогВыр 3 5
Инф(Лог) Инф Инфикс ЛогВыр 4 6
Инф(МножЗнач) Инф Инфикс МножЗнач 4 7
Инф(СпЗнач) Инф Инфикс СпЗнач 4 8
Инф(СпПар) Инф Инфикс СпПар 4 9
Инф(СпИнд) Инф Инфикс СпИнд 4 10
Преф(Рел) Преф Префикс РелВыр 3 11
Инф(Рел) Инф Инфикс РелВыр 4 12
Инф(Терм) Инф Инфикс терма 4 13
Инф(Формула) Инф Инфикс формулы 4 14
Инф(Дом) Инф Инфикс ДомВыр 4 15
АОпСрав АОпСрав Операция арифметического сравнения 16
ТОпСрав ТОпСрав Операция сравнения термов 17
Спец Спец Спецификатор 18
СпецКлюч0 Ключ Ключ спецификатора (0) 19
СпецКлюч1 Ключ Ключ спецификатора (1) 20
СпецКлюч2 Ключ Ключ спецификатора (2) 21
ИмяОтн ИмяОтн Полное имя отношения 22
Модуль Модуль Программный модуль 23
ИдМод1 ИмяМод Имя модуля 24
ИдМод2 ИмяМод Имя модуля 1 25
ИдМод3 ИмяМод Имя модуля 2 26
ИдОтн1 ИдОтн Идентификатор отношения 3 27
ИдОтн2 ИдОтн Идентификатор отношения 4 28
ИдТоч Ид Идентификатор переменной 5 29
ИдСв1 ИдСв Переменная свертки (ввод) 6 30
ИдСв2 ИдСв Переменная свертки (выбор) 7 31
НатЧис НатЧис Натуральное число 32
Список Список Разделитель списка 5 33
Комментарий Комментарий Комментарий 35
Текст Текст {FreeInput} Свободный ввод 6 34
Секция Ветви
//Имя схемы Тип ветви Имя ветви ID DEFVIS
Выр(@Тип) Branch *Префиксная связка 1
Выр(@Тип) Branch *Инфиксная связка 2
Выр(@Тип) Branch *Условный выбор 3
Выр(@Тип) Branch *Выбор из множества альтернатив 4
Выр(@Тип) Branch *Свертка 5
Выр(@Тип) OptionBranch Скобка инфикса 1 1
Выр(@Тип) OptionBranch Иначе 2 1
Выр(@Тип) OptionBranch Иначе 3 1
Выр(@Тип) OptionBranch Инфикс свертки 4 1
Выр(Ар) Branch Натуральное число 6
Выр(Ар) Branch Переменная свертки 7
Выр(Ар) Branch Количество входов отношения 8
Выр(Ар) Branch Количество выходов отношения 9
Выр(Рел) Branch Вызов отношения 6
Выр(Рел) Branch График отношения 7
Выр(Рел) OptionBranch Входной Терм 5 1
Выр(Рел) OptionBranch Выходной Терм 6 1
Выр(Рел) OptionBranch Формула 7
Выр(Терм) Branch Переменная терма 6
Выр(Терм) Branch Анонимная переменная 7
Выр(Терм) Branch Вызов отношения 8
Выр(Терм) Branch Список 9
Выр(Терм) OptionBranch Список Индексов 5
Выр(Терм) OptionBranch Обращение Отн. 6
Выр(Терм) OptionBranch Терм вызова 7 1
Выр(Терм) OptionBranch Список 8 1
Выр(Формула) Branch Логичекое условие 6
Выр(Формула) Branch Вызов отношения 7
Выр(Формула) OptionBranch Обращение Отн. 5
Выр(Формула) OptionBranch Терм вызова 6 1
Выр(Дом) Branch Определение 6
Выр(Дом) Branch Конструктор 7
Выр(Дом) Branch Комментарий 8
Выр(Дом) OptionBranch Спецификатор 5
Выр(Дом) OptionBranch Список Индексов 6
Выр(Дом) OptionBranch Список Параметров 7
Выр(Дом) OptionBranch Список Индексов 8
Выр(СпПар) Branch Параметр 6
Выр(СпПар) Branch Пропуск параметра 7
Выр(СпПар) Branch Собственные параметры 8
Выр(СпПар) OptionBranch Список группы 5
Выр(СпПар) OptionBranch Имя модуля 6
Выр(СпПар) OptionBranch Спецификатор 7
Выр(СпПар) OptionBranch Список Индексов 8
Выр(СпПар) OptionBranch Список Параметров 9
Выр(Лог) Branch Логическая связка 6
Выр(МножЗнач) Branch Диапазон 6
Выр(МножЗнач) Branch Значение 7
Выр(СпЗнач) Branch Диапазон 6
Выр(СпЗнач) OptionBranch Значение 5 1
Выр(СпИнд) Branch Индекс 6
ИмяОтн Branch Полное имя 1
ИмяОтн Branch Собственное имя 2
ИмяОтн Branch Номер параметра 3
ИмяОтн OptionBranch Имя модуля 1
ИмяОтн OptionBranch Спецификатор 2
ИмяОтн OptionBranch Список индексов 3
ИмяОтн OptionBranch Список параметров 4
Модуль OptionBranch Подключаемые модули 1
Модуль OptionBranch Скрытая часть 2 1
Инф(Ар) Branch Сложение 1
Инф(Ар) Branch Вычитание 2
Инф(Ар) Branch Умножение 3
Инф(Ар) Branch Деление 4
АОпСрав Branch Больше 1
АОпСрав Branch Меньше 2
АОпСрав Branch Равно 3
АОпСрав Branch Не равно 4
АОпСрав Branch Больше или равно 5
АОпСрав Branch Меньше или равно 6
ТОпСрав Branch Равно 1
ТОпСрав Branch Не равно 2
Инф(Лог) Branch И 1
Инф(Лог) Branch ИЛИ 2
Инф(Лог) Branch Исключающее ИЛИ 3
Инф(МножЗнач) Branch Пересечение 1
Инф(МножЗнач) Branch Вычитание 2
Инф(МножЗнач) Branch Объединение 3
Инф(Рел) Branch Последовательная композиция 1
Инф(Рел) Branch Конкатенация 2
Инф(Рел) Branch Унификация 3
Инф(Рел) Branch Условная композиция 4
Инф(Рел) Branch Параллельная композиция 5
Инф(Рел) Branch Объединение 6
Инф(Рел) Branch Пересечение 7
Инф(Терм) Branch Объединение термов 1
Инф(Терм) Branch Альтернативный терм 2
Инф(Формула) Branch И 1
Инф(Формула) Branch ИЛИ 2
Спец Branch Полный 1
Спец Branch Односложный 2
Спец Branch Однонаправленный 3
Спец Branch Двунаправленный 4
Спец OptionBranch Прямая фукциональность 1
Спец OptionBranch Прямая тотальность 2
Спец OptionBranch Обратная фукциональность 3
Спец OptionBranch Обратная тотальность 4
СпецКлюч0 Branch ASSERTION 1
СпецКлюч0 Branch OBJECT 2
СпецКлюч0 Branch SET 3
СпецКлюч0 Branch PROPERTY 4
СпецКлюч0 Branch TRANSITION 5
СпецКлюч0 Branch OPERATOR 6
СпецКлюч0 Branch FUNCTOR 7
СпецКлюч0 Branch SUBSTITUTION 8
СпецКлюч0 Branch TRANSPOSITION 9
СпецКлюч1 Branch TUPLE 1
СпецКлюч1 Branch TUPLE_SET 2
СпецКлюч1 Branch PREDICATE 3
СпецКлюч1 Branch TUPLE_OPERATOR 4
СпецКлюч1 Branch TUPLE_FUNCTOR 5
СпецКлюч1 Branch TUPLE_SUBSTITUTION 6
СпецКлюч1 Branch TUPLE_TRANSPOSITION 7
СпецКлюч1 Branch REFLECTION 8
СпецКлюч1 Branch FUNCTION 9
СпецКлюч1 Branch CONSTRUCTOR 10
СпецКлюч1 Branch SUPERCONSTRUCTOR 11
СпецКлюч2 Branch RELATION 1
СпецКлюч2 Branch TUPLE_REFLECTION 2
СпецКлюч2 Branch TUPLE_FUNCTION 3
СпецКлюч2 Branch RECONSTRUCTOR 4 Посл. код:
СпецКлюч2 Branch SUPERRECONSTRUCTOR 5 307
Секция Элементы
//Имя схемы Элемент Комментарий Opt № Ветвь Список Перенос Приор ВнКод Код Символ
Выр(@Тип) Преф(@Тип) Префикс 1 @Num1
Выр(@Тип) Выр(@Тип) Выражение 1 @Num2
Выр(@Тип) `(` 1 2 @Num3
Выр(@Тип) Выр(@Тип) Выражение связки 2 @Num4 @Num6
Выр(@Тип) `)` 1 2 @Num7
Выр(@Тип) `IF` Если 3 @Num9
Выр(@Тип) Выр(Лог) Условие 3 @Num10
Выр(@Тип) `THEN` То 3 @Num11
Выр(@Тип) Выр(@Тип) Выражение 3 @Num12
Выр(@Тип) `ELSE` Иначе 2 3 @Num13
Выр(@Тип) Выр(@Тип) Выражение 2 3 @Num14
Выр(@Тип) `CASE` 4 @Num15
Выр(@Тип) Выр(Ар) Ключ - Арифм. выражение 4 @Num16
Выр(@Тип) `OF` 4 @Num17
Выр(@Тип) Выр(МножЗнач) Множество значений 4 3 @Num18
Выр(@Тип) `:` 4 3 @Num19
Выр(@Тип) Выр(@Тип) Выбираемое выражение 4 3 @Num20
Выр(@Тип) `ELSE` Иначе 3 4 @Num21
Выр(@Тип) Выр(@Тип) Выражение 3 4 @Num22
Выр(@Тип) `END` 4 @Num23
Выр(@Тип) `(` 5 @Num24
Выр(@Тип) Инф(@Тип) Инфикс свертки 4 5 @Num25
Выр(@Тип) ИдСв1 Переменная свертки (ввод) 5 @Num26
Выр(@Тип) `=` 5 @Num27
Выр(@Тип) Выр(СпЗнач) Список значений 5 @Num28
Выр(@Тип) `)` 5 @Num29
Выр(@Тип) Выр(@Тип) Выражение 5 @Num30
Выр(Ар) НатЧис Натуральное число 6 31
Выр(Ар) ИдСв2 Переменная свертки (выбор) 7 32
Выр(Ар) `>` 8 33
Выр(Ар) ИмяОтн Имя отношения 8 34
Выр(Ар) ИмяОтн Имя отношения 9 35
Выр(Ар) `>` 9 36
Выр(Лог) Выр(Ар) Арифметическое выражение 6 37
Выр(Лог) АОпСрав Оперция арифметического сравнения 6 38
Выр(Лог) Выр(Ар) Арифметическое выражение 6 4 39
Выр(МножЗнач) Выр(Ар) Арифметическое выражение 6 40
Выр(МножЗнач) `..` 6 41
Выр(МножЗнач) Выр(Ар) Арифметическое выражение 6 42
Выр(МножЗнач) Выр(Ар) Арифметическое выражение 7 43
Выр(СпЗнач) Выр(Ар) Арифметическое выражение 6 44
Выр(СпЗнач) `..` 5 6 45
Выр(СпЗнач) Выр(Ар) Арифметическое выражение 5 6 46
Выр(СпПар) `«` 5 6 47
Выр(СпПар) Выр(СпЗнач) Список группы 5 6 48
Выр(СпПар) `»` 5 6 49
Выр(СпПар) ИдМод3 Имя модуля 6 6 50
Выр(СпПар) `.` Разделитель 6 6 51
Выр(СпПар) Спец Спецификатор 7 6 52
Выр(СпПар) `[` 8 6 53
Выр(СпПар) Выр(СпИнд) Список Индексов 8 6 54
Выр(СпПар) `]` 8 6 55
Выр(СпПар) ИдОтн2 Идентификатор отношения 6 56
Выр(СпПар) `[` 9 6 57
Выр(СпПар) Выр(СпПар) Список Параметров 9 6 58
Выр(СпПар) `]` 9 6 59
Выр(СпПар) `_` Пропуск параметра 7 60
Выр(СпПар) `@` Собственные параметры 8 61
Выр(СпИнд) Выр(Ар) Арифметическое выражение 6 62
Выр(Рел) ИмяОтн Имя отношения 6 63
Выр(Рел) `{` 7 64
Выр(Рел) Выр(Терм) Входной Терм 5 7 65
Выр(Рел) `:` 7 66
Выр(Рел) Выр(Терм) Входной Терм 6 7 67
Выр(Рел) `?` 7 7 68
Выр(Рел) Выр(Формула) Формула 7 7 69
Выр(Рел) `}` 7 70
Выр(Терм) `[` 5 6 71
Выр(Терм) Выр(СпИнд) Список индексов 5 6 72
Выр(Терм) `]` 5 6 73
Выр(Терм) ИдТоч Ид переменной терма 6 74
Выр(Терм) `_` Анонимная переменная 7 300
Выр(Терм) `~` Обращение Отн. 6 8 75
Выр(Терм) ИмяОтн Имя вызываемого отношения 8 76
Выр(Терм) `(` 7 8 77
Выр(Терм) Выр(Терм) Список параметров (Терм) 7 8 78
Выр(Терм) `)` 7 8 79
Выр(Терм) `[` 9 305
Выр(Терм) Выр(Терм) Список термов 8 9 2 306
Выр(Терм) `]` 9 307
Выр(Формула) Выр(Терм) Терм 6 80
Выр(Формула) ТОпСрав Оперция сравнения термов 6 81
Выр(Формула) Выр(Терм) Терм 6 82
Выр(Формула) `~` Обращение Отн. 5 7 83
Выр(Формула) ИмяОтн Имя вызываемого отношения 7 84
Выр(Формула) `(` 6 7 85
Выр(Формула) Выр(Терм) Список параметров (Термы) 6 7 86
Выр(Формула) `)` 6 7 87
Выр(Дом) Спец Спецификатор 5 6 88
Выр(Дом) `[` 6 6 89
Выр(Дом) Выр(СпИнд) Список Индексов 6 6 90
Выр(Дом) `]` 6 6 91
Выр(Дом) ИдОтн1 Идентификатор отношения 6 92
Выр(Дом) `[` 7 6 93
Выр(Дом) Выр(СпПар) Список Параметров 7 6 94
Выр(Дом) `]` 7 6 95
Выр(Дом) `=` 6 96
Выр(Дом) Выр(Рел) Реляционное выражение 6 97
Выр(Дом) Спец Спецификатор 7 98
Выр(Дом) `[` 8 7 99
Выр(Дом) Выр(СпИнд) Список Индексов 8 7 100
Выр(Дом) `]` 8 7 101
Выр(Дом) ИдОтн1 Идентификатор отношения 7 102
Выр(Дом) `//` 8 302
Выр(Дом) Комментарий Комментарий 8 303
ИмяОтн ИдМод3 Имя модуля 1 1 103
ИмяОтн `.` Разделитель 1 1 104
ИмяОтн Спец Спецификатор 2 1 105
ИмяОтн `[` 3 1 106
ИмяОтн Выр(СпИнд) Список Индексов 3 1 107
ИмяОтн `]` 3 1 108
ИмяОтн ИдОтн2 Идентификатор отношения 1 109
ИмяОтн `[` 4 1 110
ИмяОтн Выр(СпПар) Список Параметров 4 1 111
ИмяОтн `]` 4 1 112
ИмяОтн `@` Собственное имя 2 113
ИмяОтн `«` 3 114
ИмяОтн Выр(Ар) Номер параметра 3 115
ИмяОтн `»` 3 116
Модуль `MODULE` 117
Модуль ИдМод1 Имя модуля 118
Модуль `(` 1 119
Модуль ИдМод2 Подключаемые модули 1 1 120
Модуль `)` 1 121
Модуль `=` 122
Модуль Выр(Дом) Доменное выражение -2 123
Модуль `WHERE` 2 -3 124
Модуль Выр(Дом) Доменное выражение 2 -2 125
Модуль `END` -3 126
Связка `=` 127
Связка `[` 1 128
Связка НатЧис Приоритет 1 129
Связка `]` 1 130
Связка `_` Место операнда 1 131
Связка Звено Звено связки 132
Связка `_` Место операнда 133
Преф(Ар) `-` Ар.префикс 134
Преф(Лог) `NOT` Лог.префикс 135
Преф(Рел) `~` Рел.префикс 136
Звено Текст Звено 137
ИдМод1 Текст Собственное имя модуля 138
ИдМод2 Текст Имя модуля-предка 139
ИдМод3 Текст Имя модуля (квалификатор) 140
ИдОтн1 Текст Идентификатор отношения 141
ИдОтн2 Текст Идентификатор отношения 142
ИдТоч Текст Идентификатор переменной терма 143
ИдСв1 Текст Переменная свертки (ввод) 144
ИдСв2 Текст Переменная свертки (выбор) 145
НатЧис Текст Натуральное число 146
Комментарий Текст Комментарий 304
Инф(Дом) `;` Инфикс ДомВыр 2 1 147
Инф(Ар) `+` Сложение 1 8 1 148
Инф(Ар) `-` Вычитание 2 8 2 149
Инф(Ар) `*` Умножение 3 9 3 150
Инф(Ар) `/` Деление 4 9 4 151
АОпСрав `>` Больше 1 1 152
АОпСрав `<` Меньше 2 2 153
АОпСрав `=` Равно 3 3 154
АОпСрав `<>` Не равно 4 4 155
АОпСрав `>=` Больше или равно 5 5 156
АОпСрав `<=` Меньше или равно 6 6 157
ТОпСрав `=` Равно 1 1 158
ТОпСрав `<>` Не равно 2 2 159
Инф(Лог) `AND` И 1 9 1 160
Инф(Лог) `OR` ИЛИ 2 7 2 161
Инф(Лог) `XOR` Исключающее ИЛИ 3 8 3 162
Инф(МножЗнач) `^` Пересечение 1 9 1 163 217
Инф(МножЗнач) `\` Вычитание 2 8 2 164
Инф(МножЗнач) `,` Объединение 3 7 3 165
Инф(СпЗнач) `,` Разделитель значений 1 166
Инф(СпПар) `;` Разделитель параметров 1 167
Инф(СпИнд) `,` Разделитель индексов 1 168
Инф(Рел) `o` Последовательная композиция 1 9 1 169 183
Инф(Рел) `*` Конкатенация 2 7 2 170 42
Инф(Рел) `V` Унификация 3 6 3 171 209
Инф(Рел) `>` Условная композиция 4 5 4 172 174
Инф(Рел) `#` Параллельная композиция 5 8 5 173 35
Инф(Рел) `U` Объединение 6 3 6 174 200
Инф(Рел) `П` Пересечение 7 4 7 175 199
Инф(Терм) `,` Соединение термов 1 9 1 176
Инф(Терм) `|` Альтернативный терм 2 8 2 177
Инф(Формула) `&` И 1 9 1 178 38
Инф(Формула) `v` ИЛИ 2 8 2 179 218
Список `,` Разделитель списка 1 1 180
Список `.` Разделитель списка 2 2 181
Список `;` Разделитель списка 3 3 182
Список Инф(@Тип) Разделитель списка @Num4 @Num4 @Num40
Список АОпСрав Разделитель списка 4 4 200
Спец `(` Полный 1 201
Спец `+` Прямая фукциональность 1 1 202
Спец Выр(Ар) Входная арность 1 203
Спец `+` Прямая тотальность 2 1 204
Спец `:` 1 205
Спец `+` Обратная фукциональность 3 1 206
Спец Выр(Ар) Выходная арность 1 207
Спец `+` Обратная тотальность 4 1 208
Спец `)` 1 209
Спец СпецКлюч0 Односложный ключ 2 210
Спец СпецКлюч1 Однонаправленный ключ 3 211
Спец `(` 3 212
Спец Выр(Ар) Арность 3 213
Спец `)` 3 214
Спец СпецКлюч2 Двунаправленный ключ 4 215
Спец `(` 4 216
Спец Выр(Ар) Входная арность 4 217
Спец `:` 4 218
Спец Выр(Ар) Выходная арность 4 219
Спец `)` 4 220
СпецКлюч0 `ASSERTION` ASSERTION 1 1 221
СпецКлюч0 `OBJECT` OBJECT 2 2 222
СпецКлюч0 `SET` SET 3 3 223
СпецКлюч0 `PROPERTY` PROPERTY 4 4 224
СпецКлюч0 `TRANSITION` TRANSITION 5 5 225
СпецКлюч0 `OPERATOR` OPERATOR 6 6 226
СпецКлюч0 `FUNCTOR` FUNCTOR 7 7 227
СпецКлюч0 `SUBSTITUTION` SUBSTITUTION 8 8 228
СпецКлюч0 `TRANSPOSITION` TRANSPOSITION 9 9 229
СпецКлюч1 `TUPLE` TUPLE 1 1 230
СпецКлюч1 `TUPLE_SET` TUPLE_SET 2 2 231
СпецКлюч1 `PREDICATE` PREDICATE 3 3 232
СпецКлюч1 `TUPLE_OPERATOR` TUPLE_OPERATOR 4 4 233
СпецКлюч1 `TUPLE_FUNCTOR` TUPLE_FUNCTOR 5 5 234
СпецКлюч1 `TUPLE_SUBSTITUTION` TUPLE_SUBSTITUTION 6 6 235
СпецКлюч1 `TUPLE_TRANSPOSITION` TUPLE_TRANSPOSITION 7 7 236
СпецКлюч1 `REFLECTION` REFLECTION 8 8 237
СпецКлюч1 `FUNCTION` FUNCTION 9 9 238
СпецКлюч1 `CONSTRUCTOR` CONSTRUCTOR 10 10 239
СпецКлюч1 `SUPERCONSTRUCTOR` SUPERCONSTRUCTOR 11 11 240
СпецКлюч2 `RELATION` RELATION 1 1 241
СпецКлюч2 `TUPLE_REFLECTION` TUPLE_REFLECTION 2 2 242
СпецКлюч2 `TUPLE_FUNCTION` TUPLE_FUNCTION 3 3 243
СпецКлюч2 `RECONSTRUCTOR` RECONSTRUCTOR 4 4 244
СпецКлюч2 `SUPERRECONSTRUCTOR` SUPERRECONSTRUCTOR 5 5 245


Соседние файлы в папке FLIDE