Synchronous asynchrony using coroutines