Teorija Programskih Jezikov (IŠRM)/Stari kolokviji in izpiti/Izpit-2007-02-24/1. naloga

Iz MaFiRaWiki

Za vsakega od naslednjih MinHaskell programov ugotovi, ali ima tip in katerega. Nato ugotovi še, ali program divergira, blokira ali se evaluira v vrednost. Če se evaluira v vrednost, v katero?

  1. if (if 5 < 7 then false else true) then 1 else 2
  2. if (if 5 < 7 then false else 1) then true else 2
  3. rec x : int list is 1::x
  4. (fun x:int -> 2 + x)[int]

Navodilo: formalnih izpeljav za tipe in evaluacijo ni treba zapisati, zadostuje že neformalna obravnava.

/Rešitev

Osebna orodja