4
Глава 2. ОБЪЕКТНО-СИНТАКСИЧЕСКОЕ ПРОГРАММИРОВАНИЕ..............................62
2.1. Основные понятия и примеры объектно-синтаксического программирования ................
Рекурсивное вычисление функции Factorial в объектно-синтаксическом стиле (64). Порождающая
грамматика, определяющая вычисление функции Аккермана (72).
2.2. Объектно-синтаксическая архитектура программ................................................................79
2.3. Информационное взаимодействие между конструкциями..................................................80
2.4. Объектно-синтаксическое программирование на Турбо-паскале.......................................83
2.5. Историческая справка .............................................................................................................86
Глава 3. ЧЕЛНОЧНЫЕ ТРАНСЛЯЦИИ .....................................................................................88
3.1. Реализация трансляций при помощи челночных процессоров ...........................................
3.2. Челночный сплайновый процессор........................................................................................90
Прямой просмотр (90). Обратный просмотр (90). Операционная среда (91)
3.3. Функционирование челночного сплайнового процессора...................................................91
Прямой просмотр (91). Обратный просмотр (92).
3.4. Построение челночных сплайновых процессоров................................................................94
Построение управляющего процессора прямого просмотра (95). Вспомогательные алгоритмы для
построения прямого просмотра (100). Построение управляющего процессора обратного просмотра
(103). Вспомогательные алгоритмы для построения обратного просмотра (106).
3.5. Спецификация челночных трансляций при помощи трансляционных RBNF-
грамматик..............................................................................................................................106
Глава 4. ОПТИМИЗАЦИЯ ЧЕЛНОЧНЫХ ПРОЦЕССОРОВ ...............................................109
4.1. О методе оптимизации челночных процессоров ..................................................................
4.2. Эквивалентность состояний, магазинных и входных символов .........................................
4.3. Сокращение числа входов в таблицу возвратных состояний ............................................111
4.4. Порядок оптимизационных преобразований ......................................................................112
4.5. Построение лексических переходников прямого и обратного просмотров.....................113
4.6. Иллюстрация метода оптимизации процессора .................................................................114
Оптимизация калькулятора (114)
4.7. Учет диагностических сообщений при оптимизации.........................................................120
4.8. Оптимизация управляющих граф-схем ...............................................................................121
Глава 5. ЭКВИВАЛЕНТНЫЕ ПРЕОБРАЗОВАНИЯ ТРАНСЛЯЦИОННЫХ
ГРАММАТИК................................................................................................................122
5.1. Причины, цели и методы преобразований ............................................................................
Ограничения механизма анализа (122). Методы эквивалентных преобразований (123). Исключение
несамовставленных нетерминалов из управляющей КС-грамматики (125).
5.2. Некоторые полезные регулярные тождества ......................................................................127
5.3. Иллюстрация алгоритма исключения нетерминалов ...........................................................
5.4. Редукция КС-грамматик........................................................................................................132
Минимизация граф-схемы по классам эквивалентности (132). Обратное отображение граф-схемы в
RBNF-грамматику (135).
Глава 6. ПРАКТИЧЕСКИЕ АСПЕКТЫ ПРИМЕНЕНИЯ SYNTAX-ТЕХНОЛОГИИ ......139
6.1. Построение трансляционной грамматики .............................................................................
Конструкция <целое без знака> (141). Синтаксически управляемый калькулятор (143). CALC —
трансляционная грамматика калькулятора (первоначальный вариант) (145).
6.2. Эквивалентные преобразования трансляционной грамматики ........................................150
Грамматика CALC (151).
6.3. Генерация диагностических сообщений об ошибках.........................................................156
Диагностические сообщения CALC (157).
6.4. Использование резольверов в трансляционных грамматиках...........................................159
Gener — генераторы Алгола 68 (модель) (161).