Comment by jcparkyn
25 days ago
This is a little bit tricky because the parser has to distinguish between:
for x in arr (something ())
\ /-- function call
and
for x in arr (something ())
\ /-- loop body
This is consequence of combining "blocks" and "precedence" into the same construct ().
A more fitting example would be to support:
for x in arr do set z += x;
for x in arr do something x;
IIRC these both currently require an explicit block in my parser.
I see, thanks for the clear example of the ambiguity you need to avoid! Fun stuff.