Введение в теорию языков программирования
книга

Введение в теорию языков программирования

Здесь можно купить книгу "Введение в теорию языков программирования " в печатном или электронном виде. Также, Вы можете прочесть аннотацию, цитаты и содержание, ознакомиться и оставить отзывы (комментарии) об этой книге.

Автор: Жиль Довек, Жан-Жак Леви

Форматы: PDF

Издательство: ДМК Пресс

Год: 2023

Место издания: Москва

ISBN: 978-5-89818-582-4

Страниц: 135

Артикул: 107994

Электронная книга
199

Краткая аннотация книги "Введение в теорию языков программирования"

Языки программирования от Фортрана и Кобола до Caml и Java играют ключевую роль в управлении сложными компьютерными системами. Книга «Введение в теорию языков программирования» представляет читателю средства, необходимые для проектирования и реализации подобных языков. В ней предлагается единый подход к различным формализмам для определения языков программирования – операционной и денотационной семантике. Особое внимание при этом уделяется способам задания отношений между тремя объектами: программой, входным значением и результатом. Эти формализмы демонстрируются на примере таких типичных элементов языков программирования, как функции, рекурсия, присваивание, записи и объекты. При этом показывается, что теория языков программирования состоит не в последовательном изучении самих языков один за другим, а строится вокруг механизмов, входящих в различные языки. Изучение таких механизмов в книге приводит к разработке вычислителей, интерпретаторов и компиляторов, а также к реализации алгоритмов вывода типов для учебных языков.

Содержание книги "Введение в теорию языков программирования "


От переводчиков
Что называют теорией языков программирования?
Благодарности
Глава 1. Термы и отношения
1.1. Индуктивные определения
1.1.1. Теорема о неподвижной точке
1.1.2. Индуктивные определения
1.1.3. Структурная индукция
1.1.4. Рефлексивно-транзитивное замыкание отношения
1.2. Языки
1.2.1. Языки без переменных
1.2.2. Переменные
1.2.3. Многосортные языки
1.2.4. Свободные и связанные переменные
1.2.5. Подстановка
1.3. Три способа задания семантики языка
1.3.1. Денотационная семантика
1.3.2. Операционная семантика с большим шагом
1.3.3. Операционная семантика с малым шагом
1.3.4. Незавершающиеся вычисления
Глава 2. Язык PCF
2.1. Функциональный язык PCF
2.1.1. Программы как функции
2.1.2. Функции как объекты первого класса
2.1.3. Функции с несколькими аргументами
2.1.4. Без присваиваний
2.1.5. Рекурсивные определения
2.1.6. Определения
2.1.7. Язык PCF
2.2. Операционная семантика с малым шагом
2.2.1. Правила
2.2.2. Числа
2.2.3. Эквивалентность (congruence)
2.2.4. Пример
2.2.5. Нередуцируемые замкнутые термы
2.2.6. Незавершающиеся вычисления
2.2.7. Слияние (confluence)
2.3. Стратегии редукции
2.3.1. Понятие стратегии
2.3.2. Слабая редукция
2.3.3. Вызов по имени
2.3.4. Вызов по значению
2.3.5. Немного лени не помешает
2.4. Операционная семантика с большим шагом
2.4.1. Вызов по имени
2.4.2. Вызов по значению
2.5. Вычисление PCF-программ
Глава 3. От вычисления к интерпретации
3.1. Вызов по имени
3.2. Вызов по значению
3.3. Оптимизация: индексы де Брауна
3.4. Построение функций с помощью неподвижных точек
3.4.1. Первая версия: рекурсивные замыкания
3.4.2. Вторая версия: рациональные значения
Глава 4. Компиляция
4.1. Интерпретатор, написанный на языке без функций
4.2. От интерпретации к компиляции
4.3. Абстрактная машина для PCF
4.3.1. Окружение
4.3.2. Замыкания
4.3.3. Конструкции PCF
4.3.4. Использование индексов де Брауна
4.3.5. Операционная семантика с малым шагом
4.4. Компиляция PCF
Глава 5. PCF с типами
5.1. Типы
5.1.1. PCF с типами
5.1.2. Отношение типизации
5.2. Отсутствие ошибок во время выполнения
5.2.1. Использование операционной семантики с малым шагом
5.2.2. Использование операционной семантики с большим шагом
5.3. Денотационная семантика для PCF с типами
5.3.1. Тривиальная семантика
5.3.2. Завершаемость
5.3.3. Отношение порядка Скотта
5.3.4. Семантика неподвижной точки
Глава 6. Вывод типов
6.1. Вывод мономорфных типов
6.1.1. Присвоение типов нетипизированным термам
6.1.2. Алгоритм Хиндли
6.1.3. Алгоритм Хиндли с немедленным разрешением
6.2. Полиморфизм
6.2.1. PCF с полиморфными типами
6.2.2. Алгоритм Дамаса–Милнера
Глава 7. Ссылки и присваивание
7.1. Расширение PCF
7.2. Семантика PCF со ссылками
Глава 8. Записи и объекты
8.1. Записи
8.1.1. Помеченные поля
8.1.2. Расширение PCF записями
8.2. Объекты
8.2.1. Методы и функциональные поля
8.2.2. Что значит «Self»?
8.2.3. Объекты и ссылки
Послесловие
Библиография
Предметный указатель

Все отзывы о книге Введение в теорию языков программирования

Чтобы оставить отзыв, зарегистрируйтесь или войдите

Внимание!
При обнаружении неточностей или ошибок в описании книги "Введение в теорию языков программирования (автор Жиль Довек, Жан-Жак Леви)", просим Вас отправить сообщение на почту help@directmedia.ru. Благодарим!