# define r(foo) (d->foo->r) define say(what) printf("%s\n", what) define cow(moo) repeat say(moo) define coro(name) int name^^_f(process *p) name *d = (name *)p switch p->pc process_counter . . # ... # stop main() r(foo) cow("baa!") ; cow("moo!") ; say("hello") coro(foo) hello