this is great, thanks... we have used generators to create something akin to a cooperative tasking environment... not to implement multitasking, but to be able to control low level data processing scripts. These scripts, written as generators, yield control to a control loop which then can pause, resume, abort, or change the state of shared context objects which the script uses as it's input and output space. E.g. the control loop can see there is intermediate output which an operator (managing a data reduction pipeline) might want to see.
I can see from the first few slide I need to understand this. It already seems clear that there are ways to improve our approach to what we have done, though the overall approach is solid and works well. anyway thanks. -- http://mail.python.org/mailman/listinfo/python-list