loop for i to 10
print i
end
In the parser we encounter loop
. It's not a function or a special form, but it is a macro.
We pass it off to the macro transformer function, which spits out an AST node, and we add that,
instead of the original (illegal) code.
The loop macro can be defined like: