Metody Programowania - Lista 5


Zadanie 1

Zakodować w notacji intepretera z wykładu procedurę obliczania reszty z dzielenia liczby dodatniej a przez liczbę dodatnią b (samą procedurę zrealizować jako pętlę która wielokrotnie odejmuje b od a).

Zadanie 2

Do intepretera z wykładu dodać następujce operacje: Następnie bazując na dodanych operacjach zakodować jako wyrażenie dla interpretera procedurę kopiowania listy.

Zadanie 3

Wyjaśnić dlaczego w ostatnim teście dla intepretera z wykładu najpierw inicjuję na 0 zmienną fib a potem podstawiam wartość funkcyjną (closure). Czy można by bezpośrednio przypisać treść procedury do fib?

Zadanie 4

Użyć applist lub maplist z odpowiednim parametrem funkcyjym (jeśli trzeba zagnieżdżonym) aby: