looping structures! <<< for i uint = 0..10 { print(i) } for x uint = 0, x < 10, x++ { print(r) } var y uint = 0 while y < 10 { print(y) y++ } >>> (loop for-each (declaration i (type name uint) (initializer (expr (binary .. (expr 0) (expr 10))))) (block (expr (call (expr (name print)) (arg (expr (name i))))) )) (loop c-style (declaration x (type name uint) (initializer (expr 0))) (condition (expr (binary < (expr (name x)) (expr 10)))) (iteration (expr (increment/decrement ++ postfix (expr (name x))))) (block (expr (call (expr (name print)) (arg (expr (name r))))) )) (variable (declaration y (type name uint) (initializer (expr 0)))) (loop while (condition (expr (binary < (expr (name y)) (expr 10)))) (block (expr (call (expr (name print)) (arg (expr (name y))))) (expr (increment/decrement ++ postfix (expr (name y)))) ))