>I would really like to know more about python 2.5's new generatorThey're not coroutines. The difference between generators in Python 2.4
characteristic s that make them more powerful and analogous to
coroutines. Is it possible for instance to employ them in situations
where I would normally use a thread with a blocking I/O (or socket)
operation? If it is, could someone show me how it can be done? There
appears to be a very limited amount of documentation in this repect,
unfortunatel y.
and in Python 2.5 is that in Python 2.5, `yield´ can be used as part of
an expression. If a generator is resumed via its `send´ method, then the
`yield´ expression evaluates to the value passed to `send´.
You still can't suspend execution through arbitrary stack frames; `yield´
only suspends the generator it is in, returning control to the frame
immediately above it on the stack.
You can build a trampoline based on generators, but you can do that in
Python 2.4 just as easily as you can do it in Python 2.5.
Jean-Paul