Teorija Programskih Jezikov (IŠRM)/Stari kolokviji in izpiti/Kolokvij-2005-12-15/1. naloga

Iz MaFiRaWiki

Za vsakega od naslednjih MinML 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 3 - 5 < 0 then 42 else 23
  2. (0 < 0) < 0)
  3. (if 3 + 5 < 0 then false < 0 else 5) + 2
  4. fun f(x:int):bool is f(x-1)
  5. (fun f(x:int):bool is f(x-1))42

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

/Rešitev

Osebna orodja