Util のソースプログラムを入力して下さい。
prodPrimes = \ n -> if n==1 then 1 else if isPrime n then n * prodPrimes (n-1) else prodPromes (n-1) ; fact = \ n -> if n==0 then 1 else n*fact(n-1) ; move = \ n -> write ("move " ++ n) ; hanoi = \ n -> if n>0 then begin hanoi (n-1); move n; hanoi (n-1) end else () ; fibM = \ m -> begin write ("argument = " ++ m); if (m<2) then set xP 1 else set xP (fibM (m-1) + fibM (m-2)); write ("result for the argument " ++ m ++ " = " ++ get xP); get xP end