The current for loop is slightly different from the traditional while loop (no initializer expression), it will make people confusing.
I am thinking that we can simplify it as while loop with post-add operation like this:
func sum (){
var i = a
while i++ < b {
...
}
}
This is similar to other language so we don’t have to explain,
the other benefit is this is more consistent with our ASI rule, error recovery is easy to get it right.
post-addition is a general useful feature