Most "active" coroutine library project?

Grant Edwards invalid at invalid.invalid
Wed Sep 23 16:58:49 EDT 2009


On 2009年09月23日, exarkun at twistedmatrix.com <exarkun at twistedmatrix.com> wrote:
> On 08:16 pm, sajmikins at gmail.com wrote:
>>On Wed, Sep 23, 2009 at 2:05 PM, <exarkun at twistedmatrix.com> wrote:
>>[snip]
>>>>>>But what some Python programmers call coroutines aren't really the 
>>>same as
>>>what the programming community at large would call a coroutine.
>>>>>>Jean-Paul
>>>>Really? I'm curious as to the differences. (I just skimmed
>>the entry for coroutines in Wikipedia and PEP 342, but I'm not
>>fully enlightened.)
>> The important difference is that coroutines can switch across
> multiple stack frames. Python's "enhanced generators" can
> still only switch across one stack frame - ie, from inside the
> generator to the frame immediately outside the generator.

Good point. Being unable to "yeild" from inside a function
called by the "main" coroutine can be limiting once you try to
do something non-trivial. I had read about that limitation,
but had forgotten it.
Some "stackless" threading schemes for C (e.g. Protothreads
http://www.sics.se/~adam/pt/) have the same issue, and it does
require some extra effort to work around that limitation.
-- 
Grant Edwards grante Yow! I have accepted
 at Provolone into my life!
 visi.com 


More information about the Python-list mailing list

AltStyle によって変換されたページ (->オリジナル) /