Lisp in Small Pieces Внутри читателя ожидают:
- более 37000 скобок!
- разбор по косточкам семантики всех конструкций Scheme, а также его родственников;
- в том числе разбор его денотационной семантики — формального математического описания языка в терминах лямбда-исчисления;
- 11 интерпретаторов и 2 компилятора (в машинный код описываемой там же VM и транслятор в код на Си);
- объяснение сути рекурсии, замыканий и окружений, продолжений и стека вызовов, реализации макросов и метаязыков, а также чуть рефлексии и самомодифицирующегося кода;
- множество экскурсов в историю Лиспа и причины принятых решений в дизайне языка;
- собственная CLOS-подобная объектная система автора (и её реализация, разумеется);
- время от времени возникающее чувство: «Да это же X из языка Y»;
- список литературы по теме на 230 наименований.
Отличный учебник по основам реализации языков программирования, с которым стоит ознакомиться не только любителям скобочек.
Книга распространяется на условиях CC BY-ND 3.0.
Автор перевода:
https://github.com/ilammy
PDF (~2,9 МБ)_
https://github.com/ila...v.1.1/lisp.pdfEPUB (~3,8 МБ)_
https://github.com/ila...lisp-10pt.epub