Try Crystal and you get the joy of Ruby enumerables together with a static type system.
https://github.com/Kotlin/kotlinx.coroutines/blob/master/cor...
But dang it's nice to do stuff in it.
The GIL would be quite easy to replace otherwise.
IIUC for CRuby it's mostly about how to keep the VM simple. Koichi Sasada is working on an ownership based model like Erlang has, which sidesteps a bunch of theses issues.