There are two different aspects: 1. If you get an iterable, it sometimes matters whether iteration restarts when you ask the iterable for an iterator. 2. Self-iterability is how iterators turn themselves into iterables so that constructs that work with iterables can be used. It also enables generators to play two roles: generator methods can implement `[Symbol.iterator]` and generator functions can implement iterable-returning functions.
In this particular case, I’m interested in #1. I probably have to come up with a better term for it. > On 06 Apr 2015, at 23:30, Dmitry Soshnikov <dmitry.soshni...@gmail.com> wrote: > > Exactly, that's what I tried to explain. Since in one case it considers just > an iterable (an array), and in other case -- an iterator (which is by > "coincidence" is also an iterable). But an array's iterator is an iterable as > well, and also always returns itself for iterator protocol. > > Yeah, the "self-iterable" makes much more sense in this case. > > Dmitry > > On Monday, April 6, 2015, Allen Wirfs-Brock <al...@wirfs-brock.com > <mailto:al...@wirfs-brock.com>> wrote: > > > On Apr 6, 2015, at 2:23 PM, Dmitry Soshnikov <dmitry.soshni...@gmail.com > > <javascript:;>> wrote: > > > > I guess all built-in iterators return themselves for `Symbol.iterator` > > protocol. So they are all "singletons". I described in detail where > > confusion/substitution of concepts happens in that analysis in the recent > > two comments. > > > > I don’t think “singleton” is the correct term for the concept that Axel is > trying to describe. A “singleton” is normally an kind of object for which > there is only a single instances. There may be many instances of, for > example %ArrayIterator%, so it isn’t correct to call %ArrayIterator% a > singleton > > What Axel is describing might be characterized as “self iterable”, it returns > itself when recieving a Symbol.iterator request. > > Allen > > _______________________________________________ > es-discuss mailing list > es-discuss@mozilla.org > https://mail.mozilla.org/listinfo/es-discuss -- Dr. Axel Rauschmayer a...@rauschma.de rauschma.de
_______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss