It looks neat, however I would personally not be too bothered about Ruby 2 compatibility, particularly if it means performance won’t be up to a par with other concurrent languages like Elixir/Erlang.
I think people love Ruby so much that they wouldn’t mind having to re-write some parts of their program to upgrade it to Ruby 3 (if it wasn’t R2 compatible).
I agree. Jruby+Truffle+graal will push ruby 2 really hard and will keep it competitive.
In the meantime is love for ruby 3 to explore actor concurrency, optional types, maybe some more functional stuff. More scala, more erlang, less perl, less ruby 1.8, and the same sort of friendliness in the language that its known for. Ruby is really good at sort of making it possible for me to solve the problem in my head, write THAT instead of a bunch of other ceremonious crap just to get things working.
Of course there are some benefits to backwards compat, python nerds can certainly teach us here, but I think future jruby largely mitigates the risk of a bunch of rails junk having to be rewritten. Depending on how deviation there is, it could even be possible to port ruby2->ruby3 or at least do the hard parts.
I don’t want compatibility to hold back the language. If we do that, we’re Java.