Caveat: with yield*, you want generators to be more like functions than like blocks.
[[[Sent from a mobile device. Please forgive brevity and typos.]]] Dr. Axel Rauschmayer a...@rauschma.de Home: http://rauschma.de Blog: http://2ality.com On 16.11.2013, at 10:28, "Claus Reinke" <claus.rei...@talk21.com> wrote: >>> What I don't understand is why generator expressions are not used >>> as the only way to create generators, leaving 'function' alone. >> We have been over this before: to support flows that for-of loops cannot >> expression, specifically coroutine libraries such as http://taskjs.org/. > > Which is why I keep suggesting block-style generator expressions > in addition to comprehension-style generator expressions. The > equivalent of today's > > function*() { ... yield value ... } > > would be > function() { return do* { ... yield value ... }} > > or, if 'function' peculiarities don't matter, the simpler > > () => do* { ... yield value ... } > > As far as I can tell, no functionality would go missing. 'function' and arrow > would remain on par and function and generators would > remain separate (but composable) building blocks, leading to a more > modular language spec. You could keep 'function*' as syntactic sugar. > > Claus > _______________________________________________ > es-discuss mailing list > es-discuss@mozilla.org > https://mail.mozilla.org/listinfo/es-discuss > _______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss