👨💻 LANGJAM
Некоторое время назад мы объявили о мероприятии, где участникам предлагается написать свой язык программирования, соответствующий выбранной теме, которая будет определена во время начала конкурса.
В прошлом посте мы обещали опубликовать ресурсы для тех, кто ни разу не писал свой язык программирования, но очень хотел бы поучаствовать. Так вот, мы возвращаемся со списком ресурсов!
🌟Ресурсы:
1. Книга: Crafting interpreters. Bob Nystrom. Книга отлично подходит для новичков, с понятным объяснением сложных тем. В книге представлена имплементация интерпретатор языка программирования Lox на Java, и виртуальный машины для Lox на C. Книга бесплатно на английском языке доступна онлайн на официальном сайте
2. Книга: Thorsten Ball. Writing interpreter in Go. Книга простым языком объясняет имплементацию интерпретатора для простого языка программирования Monkey на Go. Книга на английском бесплатно доступна тут
3. Книга: Thorsten Ball. Writing compiler in Go. Книга простым языком объясняет имплементацию компилятора для простого языка программирования на Go.
4. Книга: Бенджамин Пирс. Типы в языках программирования. Книга предоставляет информацию по множеству типовых систем и их имплементаций. Книга бесплатно доступна тут
5. Книга: Никлаус Вирт. Построение компиляторов. В этой маленькой книге изложен виртовский подход к разработке компиляторов, в котором отбрасываются любые усложнения вроде оптимизаций или сложностей кодогенерации, и читатель идет к работающему языку самым коротким путем. Теории тут нет, все пояснения делаются на пальцах, формируя интуитивное понимание проблем.
6. Видеокурс от ANNIMON по написанию интерпретируемого языка программирования на Java. В курсе подробно разобрано большинство тем, необходимых для имплементации языка программирования.
https://www.youtube.com/playlist?list=PL81SFGIHr5IJFsoWX0qTeQ9_-MFBE552C
7. Видеокурс по написанию базы для языка программирования на TypeScript:
https://www.youtube.com/playlist?list=PL_2VhOvlMk4UHGqYCLWc6GO8Fa