Создай свой собственный язык программирования [Клинтон Л. Джеффери] (pdf) читать постранично

-  Создай свой собственный язык программирования  [Руководство программиста по разработке компиляторов, интерпретаторов и доменно-ориентированных языков для решения современных вычислительных задач] (пер. С. В. Минц) 12.48 Мб, 402с. скачать: (pdf) - (pdf+fbd)  читать: (полностью) - (постранично) - Клинтон Л. Джеффери

Книга в формате pdf! Изображения и текст могут не отображаться!


 [Настройки текста]  [Cбросить фильтры]

Клинтон Л. Джеффери

Создай
свой собственный
язык программирования

Создай свой
собственный язык
программирования
Руководство программиста по разработке
компиляторов, интерпретаторов и доменноориентированных языков для решения
современных вычислительных задач
Клинтон Л. Джеффери

Москва, 2023

УДК 004.42
ББК 32.372
Д40

Клинтон Л. Джеффери
Д40 Создай свой собственный язык программирования. Руководство программиста по разработке компиляторов, интерпретаторов и доменноориентированных языков для решения современных вычислительных
задач / пер. с англ. С. В. Минца. – М.: ДМК Пресс, 2022. – 408 с.: ил.
ISBN 978-5-93700-140-5
Книга рассказывает о том, как разрабатывать уникальные языки программирования, чтобы сократить время и стоимость создания приложений для
новых или специализированных областей применения вычислительной техники. Вы начнете с реализации интерфейса компилятора для вашего языка,
включая лексический и синтаксический анализатор, а к концу чтения сможете
разрабатывать и воплощать в коде свои собственные языки, позволяющие
компилировать и запускать программы.
Издание адресовано разработчикам программного обеспечения, заинтересованным в создании собственного языка. Для изучения материала потребуется опыт программирования на языке высокого уровня, таком как Java или C++.

УДК 004.42
ББК 32.372

First published in the English language under the title ‘Build Your Own Programming Language’ – (9781800204805)
Все права защищены. Любая часть этой книги не может быть воспроизведена в какой
бы то ни было форме и какими бы то ни было средствами без письменного разрешения
владельцев авторских прав.

ISBN (анг.) 978-1-80020-480-5
ISBN (рус.) 978-5-93700-140-5

Copyright ©Packt Publishing 2021
© Оформление, издание, перевод, ДМК Пресс, 2022

Памяти переводчика
Семена Викторовича Минца,
просто очень хорошего человека
Эта книга – его последний перевод.
С Семеном было очень приятно работать – он был немногословен и деловит.
Отлично знал информатику и программирование и перевел для нас «Введение в логическое программирование», «Объяснимые модели искусственного интеллекта на Python», «Искусство неизменяемой архитектуры» и эту
последнюю.
Он ушел слишком несправедливо рано, мог бы еще многое сделать.
Будет не хватать его. Людей, особенно талантливых, заменить невозможно.
Заместитель главного редактора
Сенченкова Елена

Оглавление
https://t.me/it_boooks

Об авторах.......................................................................................... 16
О рецензентах.................................................................................... 16
Предисловие....................................................................................... 17
Для кого эта книга.............................................................................................17
Что скрывает обложка.......................................................................................17
Как получить от этой книги максимальную пользу........................................20
Загрузка примеров............................................................................................20
Видео..................................................................................................................20
Цветные иллюстрации......................................................................................20
Используемые сокращения...............................................................................20
Список опечаток................................................................................................21
Нарушение авторских прав..............................................................................21

ЧАСТЬ I. ИНТЕРФЕЙСЫ ЯЗЫКА
ПРОГРАММИРОВАНИЯ................................................................. 23
Глава 1. Зачем создавать еще один
язык программирования?................................................................ 25
Итак, вы хотите создать свой собственный язык программирования..........25
Типы реализации языков программирования............................................26
Организация реализации языка байт-кода.................................................27
Языки, используемые в примерах................................................................28
Язык и библиотека – в чем разница?...............................................................29
Применимость к другим задачам разработки программного
обеспечения.......................................................................................................30
Определение требований к вашему языку......................................................31
Тематическое исследование – требования, которые вдохновили
на создание языка Unicon.................................................................................33
Требование Unicon № 1 – сохранять то, что люди любят в Icon.................33
Требование Unicon № 2 – поддержка крупномасштабных программ,
работающих с большими данными..............................................................34
Требование Unicon № 3 – высокоуровневый ввод/вывод
для современных приложений.....................................................................34
Требование Unicon № 4 – обеспечить универсально реализуемые
системные интерфейсы................................................................................35
Заключение........................................................................................................35
Вопросы..............................................................................................................36

Оглавление 

7

Глава 2. Дизайн языка программирования................................... 37
Определение видов слов и пунктуации в вашем языке.................................38
Определение потока