On Sep 10, 2014, at 9:00 AM, Andreas Rossberg wrote:

> On 10 September 2014 17:56, Allen Wirfs-Brock <[email protected]> wrote:
>> We agree at our June meeting to add the "return" method to generators and to
>> conditionally call "return" (if it is present) when a for-of loop terminates
>> before it exhausts its generator. See
>> https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-06/jun-5.md#conclusionresolution-2
>> .  IteratorClose is part of the implementation of this features and was
>> added in Rev 27 of the spec.
>> 
>> I believe that #1 is implicit in that decision as it has always been an ES6
>> goal that most library methods should be self-hostable in ES. That means
>> that for-of like iteration in those methods should be specified in a manner
>> that matches the observable semantics of for-of.
> 
> It wasn't all that clear to me, but that's good to hear. Does a
> similar argument apply to constructs like rest and spread?

Yes, except that I don't think the "body" of those loops can actually 
abnormally exit (or in the case of processing parameter lists, the iterator is 
an internal list iterator that doesn't have a 'return').  But that code should 
be reviewed to make sure I don't miss something.

Allen

_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to