Go almost got it right [0]; and then blew it with opaque, mandatory preemptive threading.
[0] https://gitlab.com/sifoo/snigl#io