Skip to content

Latest commit

 

History

History
25 lines (14 loc) · 4.91 KB

general_ru.md

File metadata and controls

25 lines (14 loc) · 4.91 KB

Учебники по компиляторам от русскоязычных авторов

А.П. Ершов. Введение в теоретическое программирование (беседы о методе)

В.Н. Касьянов, И.В. Поттосин. Методы построения трансляторов

В. Касьянов. Оптимизирующие преобразования программ

В. Касьянов, В. Евстигнеев. Графы в программировании: обработка, визуализация и применение

Ю.Г. Карпов. Основы построения трансляторов (2005)

Комментарий от @true-grue. Пусть вас не вводит в заблуждение название книги. Эта работа не по компиляторам, а по языкам, грамматикам и синтаксическому анализу. Надо сказать, что материал достаточно подробный, с интересными примерами. В тексте место отводится даже методам Эрли и CYK. Судя по всему, есть еще советское издание данного учебника (1982), но чем оно отличается от рассматриваемой версии -- мне неведомо.

Комментарий от @impworks. Подробный и понятный материал на русском языке, хорошо подходит для новичков. В равной мере освещаются как теоретические, так и практические вопросы создания транслятора высокоуровневого языка. Примеры на Pascal, разрабатываемый в качестве примера язык - подмножество Oberon.

Комментарий от @true-grue. В книге имеется много отсылок к истории, а также рассуждений о языках программирования с позиций виртовской школы. В целом, раздел по вопросам компиляции повторяет "Построение компиляторов" Вирта, но в несколько развернутом виде. При этом не всегда обосновывается выбор того или иного решения. Например, читателю не говорится о том, чем отличается алгоритм сортировочной станции от общего рекурсивного спуска. Другой пример: используется Форт в качестве промежуточного языка, но генератор кода создается для обычной стековой машины, уже без стековых комбинаторов Форта (DUP, DROP, SWAP, OVER). На эту тему автор делает лишь ремарку: "достаточно трудно представить, что компилятор может породить такой код". В целом, учебник свою задачу выполняет и интересен уже рассуждениями автора о языках, а также историческими отсылками. Но после выхода перевода виртовского "Построения компиляторов" рассматриваемый учебник получил сильного конкурента.

А. В. Костельцев построение компиляторов и интерпретаторов

Описывает создание учебного языка с использованием средств генерации парсеров BISON, BYACC, ZUBR.

Опалева Э.А., Самойленко В.П. -Языки программирования и методы трансляции-БХВ (2005)

Книга посвящена формальной теории грамматик. Очень качественно и понятно разобрана теория LR,LL парсеров, расписана классификации Хомского, машин Тьюринга, конечные автоматы НКА и ДКА. Материал аналогично книге Карпов Ю.Г. основы построения трансляторов, - однако подход к подачи материала отличается и в целом выглядит получше.