For readability, `then` allows splitting with newlines very long conditional expressions, without having to wrap the condition in parentheses:
if x + y + z > a
or verylongconditionalhere ()
or anotherverylongconditionalhere ()
then
...
after `if` and `elseif` the parser simply goes on until it finds `then`.Agreed, it keeps the parser fast as well because it is a lot more clear when the boolean statement ends and the code block begins. You either need parentheses, `then` or brackets around the block to make parsing clearly defined.
This is something I don't see a lot of people do. I've tended to do
and I'm still a little irked it works so well, the only alternative would be for the language to have labeled blocks. but that might be too terse