Ближайшая конференция — JPoint 2025, 3–4 апреля (Москва + трансляция).
Подробности и билеты: https://jrg.su/T2zfbS
— —
Традиционно считается, что компиляторы — одни из самых сложных программных систем, которые разрабатываются годами, а развиваются десятилетиями. Все это правда. Но это не значит, что вы не можете просто взять и написать компилятор для существующего или своего собственного языка в качестве небольшого, но увлекательного приключения.
Сложность компилятора по большей части индуцирована двумя основным факторами: языком программирования и целевой платформой, для которой вы генерируете код. JVM как платформа является невероятно простой для генерации кода, потому что предоставляет из коробки многие вещи, которые сложно реализовывать, например, для машинного кода — такие, как сборщик мусора.
Если разумно выбрать язык программирования, то написание компилятора становится вполне посильной задачей. Виталий показал, как можно быстро — примерно за два часа — написать вполне работоспособный компилятор языка Pascal в байт-код Java.
Мастер-класс состоит из двух частей.