I like this proposal and I think it is a good change.
There has been a lot of discussion about the exact name and syntax of the new features. I will not add to this as a lot has already been said, and I do not have a strong opinion one way or another.
Instead, what I am curious about, is how these new for constructs will desugar. How will this change w.r.t. fors are desugared today? Will for let and for reduce (or whatever their final names may be) still be faster than a pipeline of Enum functions as current-day normal for is, or not?
I feel it is important that the new for-related constructs will behave as similarly as possible to the original w.r.t. time- and memory usage, so that people don’t get surprised. Will this be possible?






















