defer()
Cooperative yield for coroutines. The coroutine is suspended and automatically resumed on the next main loop iteration, after async I/O completions are processed. Enables polling patterns and parallel async work. Must be called from within a coroutine (spawn/async context).
-- Wait for a condition without blocking
while not ready do defer() end