Coroutines : a programming methodology, a language design, and an implementation - Marlin, Christopher D., 1952- (Lecture notes in computer science, 1980)