“Zig decouples async/await from coroutines, uses a vtable-based Io interface for runtime polymorphism, and solves the function coloring problem.”

Zig redesigned async I/O from scratch. No function coloring. No viral async keywords. The same code works sync or async depending on runtime context. This is what Rust’s async should have been. Zig keeps making bold design choices while other languages accumulate complexity. Coming in 0.16.0.