Zig is just doing vtable-based effect programming. This is the way to go for far more than async, but it also needs aggressive compiler optimization to avoid actual runtime dispatch.

I know what a vtable is, but what is vtable-based effect programming?

Can you monomorphize the injected effect handlers using comptime, for io and allocators (and potentially more)?