import system.IO
set_option new_elaborator true

meta_definition foo : nat → nat
| a := nat.cases_on a 1 (λ n, foo n + 2)

vm_eval (foo 10)

meta_definition loop : nat → IO unit
| a := do put_str ">> ", put_nat a, put_str "\n", loop (a+1)
