3 ms·
Oh, now I understand what you mean - you're thinking of this as a way to do `for (T x : collection)` in Java. I see this as more like the `yield return` functi
by simiones 3y ago
Oh, now I understand what you mean - you're thinking of this as a way to do `for (T x : collection)` in Java.
I see this as more like the `yield return` functions of C#, which I definitely wasn't expecting. That can of course also be used to implement an iterator for a collection, but it seems much more general.
Given that before generics Go had exactly 3 types of collections, and that those were all iterable with range, I guess I never thought about this thing missing from the for loop.
- KingOfCoders 3y agoIterator is not only about collections. Its not as powerful as a yield around continuations but you can return whatever you like. ~15 (?) years ago I wrote a "famous" blog post on how to use Iterator as a poor man Maybe/Option. for (String s: m Option<String>) { // Executed on Some }