What does

let x = (fun () -> 2) in
let y = (fun () -> 3) in
match true with true -> x | false -> y;;

evaluate to?