poniedziałek, 9 lipca 2007
lazy K
Unlambda opiera się na rachunku kombinatorów SKI, który jest rachunkiem lambda pozbawionym zmiennych - stąd nazwa. Dodatkowo autor dołożył kilka nadmiarowych mechanizmów, w tym "call with current continuation", znane niektórym z Guile. Zrobił to celowo, na złość, zresztą przyznaje się do tego, chciał jeszcze bardziej zaciemnić obraz tego, co robi program w jego języku. Warto przejrzeć jego artykuł na ten temat. Konstrukacja ta robi czary-mary ze stanem obliczeń, w sposób dużo bardziej tajemniczy niż setjmp(3) z C albo throw/catch z C++.
Inaczej autor "lazy K" - ten uprościł wszystko maksymalnie i zostawił tylko operatory ("kombinatory") S, K, I. Zresztą i tak był rozrzutny - przecież I może być wyrażone jako (S K K) - zobacz tu. Ale Chris Baker był jeszcze bardziej radykalny i stworzył język, który ma tylko dwa symbole i nadal jest kompletny.
Czemu to służy ? Tylko teoretycznym badaniom. Albo artystycznej zabawie - dla niektórych język programowania też jest dziełem sztuki .......
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz