in reply to Perl 6 coroutines (RFC 31)
My understanding is that co-routines are called co-routines
because they are meant to be called from within another
closely related routine, and they pass control back and
forth between each other.
If you want to get to know them better, I would recommend playing around with a language that has them. The two most obvious ones are Scheme and Ruby. You might also find the paper Coroutines in C interesting (thanks to japhy for mentioning it once). It discusses an actual problem which coroutines would be a natural fit for, and then proceeds to show how you can mimic them in C. (The program that paper is about, PuTTY, is fairly widely used. If you are on Windows and occasionally need to telnet, or would prefer to ssh instead of telnet, then I strongly recommend looking into it.)
In Section
Meditations