Brendan Eich wrote:
Erik Arvidsson wrote:
We really need to be able to do for-of with arrays and node lists etc, without having to call .values() on it. It is such a common operation that we should not tax this further.

Agreed. Consider Peter Norvig's Sudoku solver, which I ported to JS1.7 years ago, ported to ES6:

https://gist.github.com/anonymous/5753636

Better version at

https://gist.github.com/BrendanEich/5753666

(Stripped __iterator__ left-overs from JS1.7 era -- hooray for iterable Arrays in ES6!)

/be


This code is nearly as concise as the Python original. Requiring values() calls all over does no one any favors.

The idea that iterators return themselves from their @@iterator (__iter__) hook has years of actual programmer mileage in Python. I take that experience seriously, compared to arguments from purity that tax the common use-cases.

/be



On Mon, Jun 10, 2013 at 3:32 AM, Andy Wingo <[email protected] <mailto:[email protected]>> wrote:

    On Sun 09 Jun 2013 11:34, Jason Orendorff
<[email protected] <mailto:[email protected]>> writes:

> I think it's a mistake for iterators not to be iterable.

    I agree, FWIW.

    I think I would go farther and suggest that _only_ iterators be
    iterable.  That way, the RHS of a for-of is expected to be an
    iterator.
    In the worst case you end up having:

      var a = [1, 2, 3, 4]
      for (let x of values(a))
        ...

    instead of

      for (let x of a)
        ...

which to my eye is better anyway. Making an "itertools"-like library
    difficult is a definite drawback of the current spec.

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




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

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

Reply via email to