Coroutines : A PROGRAMMING METHODOLOGY, A LANGUAGE DESIGN AND AN IMPLEMENTATION - Marlin, Christopher D. (Springer Verlag, 1980)