Търсите ли подробности особено за компилирането на мързелива оценка? Има книгата на Саймън Пейтън-Джоунс, спомената от Макс Болингброк, също и книгата, описваща изпълнението на Clean, е онлайн:
http://wiki.clean.cs.ru.nl/Functional_Programming_and_Parallel_Graph_Rewriting
Ако сте член на университет и искате нещо по-малко, можете да опитате да вземете тези книги (Henderson & Diller със сигурност са изчерпани):
Антони Дилер „Компилиране на функционални езици“ ISBN 0 471 92027 4
Питър Хендерсън „Приложение и внедряване на функционално програмиране“ ISBN 0-13-331579-7
AJT Davie „Въведение в системите за функционално програмиране, използващи Haskell“ ISBN 0 521 27724 8
Diller има пълен компилатор за мързелив език (имплементиран в Pascal) чрез намаляване на комбинатора. Това беше техниката за внедряване, изобретена от Дейвид Търнър за SASL. Хендерсън има много части от компилатор за LISPkit, миниатюрен, мързелив вариант на Lisp. Дейви описва доста детайли от машината за компилиране на мързелив език, например има описание на STG, което е много по-кратко от книгата на Саймън Пейтън-Джоунс (STG е абстрактната машина SPJ, използвана за Haskell).
Разработчиците на Clean имат доста информация за прилагането на SAPL (прост приложен език), ако прегледате списъка им с публикации:
https://clean.cs.ru.nl/Publications
И накрая, има доста документи, документиращи аспекти на Utrecht Haskell Compiler UHC (и EHC). Мисля, че по-голямата част от информацията е как е организиран компилаторът (с граматики на атрибути и „разбъркване“) и как се изпълняват системите от типове (има различни нива на система от типове в EHC), а не как „компилацията“ в задния край върши работа.
person
stephen tetley
schedule
08.12.2010