fun lazy (f) { local flag = 0, value = 0; fun () { if flag then value else value := f (); flag := 1; value fi } } local l = lazy (fun () {write (1); 800}); local x = read (); write (l ()); write (l ())