type rec: [character: x; integer: y] type T2: rec -> integer type main: string -> integer function entry: main function bar: T2 bar (r,s) := { return 0; } entry (arg) := { [ Boolean:x ; Boolean:y ; Boolean:z ; Boolean:t] if ( y & z | t ) then { (* if ( ( x < y ) & ( z = t ) ) then { y := z < t; t:= 0; } else { t := z = t; z := 1; } *) t := true; } else { y := true; (* bar('c', 7); *) } (* x := x & y; *) return 0; }