April 10 2014 Meeting Notes

Allen Wirfs-Brock allen at wirfs-brock.com
Thu Apr 24 11:38:06 PDT 2014

On Apr 24, 2014, at 11:08 AM, Jason Orendorff wrote:

> On Tue, Apr 15, 2014 at 10:24 AM, Andreas Rossberg <rossberg at google.com> wrote:
>>> JH: Iterators are claiming to Iterables, which is a lie.
>> I argued this very point in the past (after a discussion with Dmitry),
>> but wasn't very successful:
>> https://mail.mozilla.org/pipermail/es-discuss/2013-March/029004.html
>> I agree with you on this point, and still think that the current
>> iterator/iterable model is rather incoherent and the iterable concept
>> thus not really useful -- you cannot reliably write abstractions based
>> on it.
> Python has the same "incoherent" model and people constantly write
> abstractions based on iterables in Python.
> Iterators are claiming to be iterables, which is true. They are
> iterable. You can iterate over them. It has well-defined behavior and
> a lot of programs do it.
> It's disappointing to see arguments in TC39 notes and on es-discuss
> that are contradicted in the clearest possible way by ten years of
> experience in a widely used language.

I also, as a Smalltalker, with this "incoherent" model.  But I think talk of changing it is a distraction from the real issue.  At the TC39 meeting the attendees pretty strongly put aside Jafar's suggestion to change the current @@interator model.  What we did take seriously was the concern about not running generator finally blocks when a for-of initiated generator has an early exit. We don't need to redefine @@iterator conventions to address that issue.


More information about the es-discuss mailing list