На Лабиринте:
https://www.labirint.ru/books/900479/
Аннотация к книге "Создай свой собственный язык программирования. Руководство программиста по разработке компиляторов"
Книга рассказывает о том, как разрабатывать уникальные языки программирования, чтобы сократить время и стоимость создания приложений для новых или специализированных областей применения вычислительной техники. Вы начнете с реализации интерфейса компилятора для вашего языка, включая лексический и синтаксический анализатор, а к концу чтения сможете разрабатывать и воплощать в коде свои собственные языки, позволяющие компилировать и запускать любые программы.
Издание предназначено для разработчиков программного обеспечения, заинтересованных в разработке собственного языка программирования или адаптации существующего языка для той или иной предметной области. Студентам, изучающим информатику, книга пригодится как практическое руководство по разработке языка.
Для изучения материала понадобятся базовые знания и опыт работы с языком высокого уровня, таким как Java или C++.
На мой взгляд, просто шикарная книга от создателя языка unicon
unicon.org
Книга для тех, кто хоть немного знаком с предметом
Но рассказывает от начала: начиная с требований к языку. Дизайн языка тоже.
Лексер, парсер, синтаксические деревья, таблицы символов, семантический анализ, генерация промежуточного и результирующего кода и так далее...
Вплоть до генерации байт-кода или x64.
И про сборку мусора целая глава.
И даже про расцветку синтаксиса в IDE...
Немного режет глаз термин "бесконтекстные грамматики". Я привык называть контекстно-свободные.
Но в целом — прекрасный вводный курс практической направленности по компиляторам.
Да еще в таком небольшом объеме (400 страниц).
Самое то, что просили недавно в одном из постов здесь на рсдн.