[Python-Dev] Missing operator.call
Greg Ewing
greg.ewing at canterbury.ac.nz
Fri Feb 6 09:10:10 CET 2009
Guido van Rossum wrote:
> Why is "call expr" a more enticing syntax than "yield *expr" ?
I was thinking it would read better when you're
using generators as lightweight threads, and you
want the one-level-deep nature of generators to
be hidden as much as possible.
The fact that yielding is going on is not of
interest in that situation -- it's just an
implementation detail. What you really want to
express is calling another function, but without
losing your status of coroutine-ness.
Another way of thinking about it is that it
allows you to abstract out a chunk of code from
a generator that contains a 'yield' and put it
into another function, and then call it in
a way that resembles an ordinary function call
as closely as possible.
Maybe 'call' isn't the best word for that, but
I haven't thought of anything better so far.
--
Greg
More information about the Python-Dev
mailing list