Математика

Физика

Химия

Биология

Техника и    технологии

Определение языков программирования интерпретирующимиавтоматами- А.Оллонрен Москва1977 стр.288
Определение языков программирования интерпретирующимиавтоматами- А.Оллонрен Москва1977 стр.288

Книга посвящена формальному описанию языков программирования. Подробно рассмотрены средства описания синтаксиса (грамматики X омского, формулы Бэкуса—Наура), однако основное внимание уделено Венскому методу формального описания семантики языков программирования. Представлен как сам Венский метод, так и ряд его необычных приложений, иллюстрирующих мощь, удобство и точность предлагаемых изобразительных средств.
Книга, безусловно, будет полезна всем, кто занимается системным и теоретическим программированием, разработчикам новых языков программирования и машин, а также аспирантам и студентам соответствующих специальностей.
ОТ РЕДАКТОРА ПЕРЕВОДА
Эта книга о Венском методе формального описания языков программирования (Венском метаязыке). Метод был разработан в 1968 году в Венской лаборатории IBM под руководством Лукаса на основе идей, восходящих к Маккарти. Первым применением этого метода было вполне удовлетворительное по полноте и строгости формальное описание такого мощного языка программирования, как PL/I. Впоследствии его средствами были описаны АЛГОЛ 60, ФОРТРАН и другие языки.
Метод создавался для описания языков, но последние являются столь сложными и многоплановыми, что всякий метод их описания автоматически оказывается пригодным и для многих других целей. В частности, Венский метод годится для описания и машин, и алгоритмов, и структур данных. Его очень полезно применять для обучения основам программирования (особенно системного). Этими завидными качествами Венский метод обязан прежде всего положенной в его основу хорошо разработанной концепции абстрактных объектов, позволяющей концентрировать внимание лишь на существенном и игнорировать второстепенные детали.
Отметим, однако, что Венский метод выражает лишь процедурный (операционный) подход к описанию языков и уже поэтому ограничен. Это признают и его авторы, и автор книги, который во введении говорит о другом многообещающем подходе— аксиоматическом, разработанном Виртом и Хоаром1).
Существование других подходов не умаляет достоинств Венского метода, а лишь лучше выделяет ту область, где он пока вне конкуренции—это описание абстрактных процессов, в частности, процессов интерпретации программ на языках программирования.
Предлагаемая книга рассчитана прежде всего на специалистов—научных сотрудников и аспирантов, занимающихся теорией формальных языков, теорией трансляции, алгоритмов и программ.
Еще один подход можно найти в работе: Кауфман В. Ш., Левин В. А., естественный подход к проблеме описания контекстных условий, «Вестник «и у», серия «Вычислительная математика и кибернетика», вып. 2, 1977.
ОГЛАВЛЕНИЕ
От редактора перевода........................ 5
Предисловие к английскому изданию................. 7
Введение. Цели............................ 11
Глава I. Основные понятия............... 17
1.1. Элементы символической логики............... 17
1.2. Условные выражения.................... 26
1.3. Элементы теории множеств................. 29
1.4. Элементы алгебры...................... 34
Литература к главе I...................... 37
Глава II. Формальные языки.............. 39
2.1. Грамматики и языки.................... 39
2.2. Алголоподобные языки и фрагмент PL............ 46
2.3. Синтаксические графы.................... 52
2.4. Конечные автоматы..................... 57
Литература к главе II...................... 64
Глава III. Разбор................... 66
3.1. Системы конечных автоматов................ 66
3.2. Магазинные автоматы.................... 77
3.3. Магазинные преобразователи ................ 91
Литература к главе III..................... 96
Глава IV. Структуры данных............... 98
4.1. Почему нам необходима теория структур данных....... 99
4.2. Аксиомы структур данных................. 101
4.3. Теоретико-множественная модель структур данных...... ПО
4.4. Размеченные деревья.................... 120
Литература к главе IV..................... 126
Глава V. Классы структур данных........... 128
5.1. Обозначения......................... 128
5.2. Абстрактные грамматики.................. 134
5.3. Списки . . -........................ 142
5.4. Структурная индукция................... 146
Литература к главе V ..............,....... 156
Глава VI. Преобразования языка . ........... 158
6.1. Элементы языков программирования............. 161
6.2. Преобразованные абстрактные грамматики.......... 174
Литература к главе VI..................... 178
Глава VII. Интерпретирующие автоматы. Часть I .... 180
7.1. Управление......................... 182
7.2. Интерпретирующие функции и функция перехода....... 192
7.3. Внешняя среда, хранилища, счетчик отличительных имен и склад............................ 198
7.4. Схемы команд PL-машины.................. 203
7.5. Действия PL-машины.................... 210
Литература к главе VII..................... 218
Глава VIII. Интерпретирующие автоматы. Часть II ... 220
8.1. Вторая PL-машина.......... ........... 221
8.2. Сдвоенный автомат...........,' . ,....... 230
8.3. Отделенное управление................... 240
Литература к главе VIII . . .................. 252
Глава IX. Взаимодействующие последовательные процессы 254
9.1. Абстрактный синтаксис................... 256
9.2. Схемы команд....................... 266
9.3. Система абстрактных процессоров.............. 269
Литература к главе IX . :................... 278
Список литературы................ . ........ 280
Предметный указатель........................ 284

Цена: 200руб.

Назад

Заказ

На главную страницу

Hosted by uCoz