“Infancy”? Erlang was invented in the 80s.
“Infancy”? Erlang was invented in the 80s.
Also, other than Erlang and Elixir, which other reasonably mainstream language has this as first class features? Even Rust doesn't really put queues and message passing front and center, it just makes it easier to get away with doing traditional thread programming.
Things can be old in years since discovery/invention, but still in it's infancy in usability and adoption.
Alas, the Go ecosystem could use more channels. I'd say that the adoption is still at the infancy stage. I wonder whether there are any practical shortcomings or is it just a readability tradeoff (the Mutex tends to be super-readable, where the channels not so).
Ruby 3.0+ with Ractors: https://docs.ruby-lang.org/en/master/ractor_md.html#label-Co...
My experience with Erlang has been that it solves a great deal of concurrency problems and is way undersold.