Hmmm... On 14.10.12 21:19, Guido van Rossum wrote:
On Sun, Oct 14, 2012 at 12:14 PM, Steven D'Aprano <steve@pearwood.info> wrote:
On 15/10/12 03:15, Eric Snow wrote:
On Oct 14, 2012 8:42 AM, "Guido van Rossum"<guido@python.org> wrote:
Sadly it looks that
r = yield from (f1(), f2())
ends up interpreting the tuple as the iterator, and you end up with
r = (f1(), f2())
(i.e., a tuple of generators) rather than the desired
r = ((yield from f1()), (yield from f2()))
How about this?
r = yield from *(f1(), f2())
which currently is a SyntaxError in 3.3. I think it's too early to start proposing new syntax for a problem we don't even know is common at all.
Greg Ewing's proposal works for me:
r = yield from par(f1(), f2())
I'm not very positive about all I've read in the last 50 hours. The concept of generators IMHO gets overly bent towards modelling a sensible syntax for a problem that not even had a convincing solution in a dialect that already has full coroutines. 'par' and 'join' and friends should be considered without thinking of generators in the first place. This is attacking too many problems in one shot. My approach would be to first find out how async operations should be modelled the best under the assumption that we have a coroutine concept that works without headaches about yielding in and out from something to whatnot. After that is settled and gets consensus, then I would think about bearable patterns to implement that using generators. And when we know what we really need, maybe considering more suitable Syntax. my 0.2 thousand yen - chris -- Christian Tismer :^) <mailto:tismer@stackless.com> Software Consulting : Have a break! Take a ride on Python's Karl-Liebknecht-Str. 121 : *Starship* http://starship.python.net/ 14482 Potsdam : PGP key -> http://pgp.uni-mainz.de phone +49 173 24 18 776 fax +49 (30) 700143-0023 PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 whom do you want to sponsor today? http://www.stackless.com/