program main fn count_to(limit: i32) -> i32 local var i : unit int 0 : i32 while : unit binary < : bool var i : i32 var limit : i32 set i : unit binary + : i32 var i : i32 int 1 : i32 var i : i32 fn main() -> i32 call count_to : i32 int 4 : i32 test "while counts" local var i : unit int 0 : i32 while : unit binary < : bool var i : i32 int 3 : i32 set i : unit binary + : i32 var i : i32 int 1 : i32 binary = : bool var i : i32 int 3 : i32 test "while false skips" local var i : unit int 0 : i32 while : unit bool false : bool set i : unit binary + : i32 var i : i32 int 1 : i32 binary = : bool var i : i32 int 0 : i32