Zadania na 14.12.2007
|
Zadanie 1
Zaimplementuj semantyke redukcyjna dla jezyka
(1) ISWIM, (2) ISWIM_c. W obu przypadkach zakladamy ewaluacje CBV od
lewej do prawej. Umozliw uzytkownikowi obserwowanie pojedynczych
krokow redukcji.
|
Zadanie 2
Zaimplementuj interpreter
definiujacy jezyk ISWIM_c (startegia CBV od lewej do prawej)
rozszerzony o mozliwosc definiowania funkcji przez rekursje, wyrazenie
if, operacje arytmetyczne, logiczne oraz listowe. W efekcie
ostatecznym Twoj interpreter powinien byc w stanie zinterpretowac funkcje
multlist z pierwszego wykladu.
|
Zadanie 3 Wykonujac defunkcjonalizacje
funkcji i kontynuacji, przetransformuj interpreter z Zadania 2 do
odpowiadajacej mu maszyny abstrakcyjnej. Przeprowadz testy porownujace
wydajnosc obu ewaluatorow.
|
|