Concurrent Ruby
Modern concurrency tools including agents, futures, promises, etc.
Modern concurrency tools including agents, futures, promises, thread pools, supervisors, and more. Inspired by Erlang, Clojure, Scala, Go, Java, JavaScript, and classic concurrency patterns. Concurrent Ruby is an 'unopinionated' toolbox that provides useful utilities without debating which is better or why. It remains free of external gem dependencies. It stays true to the spirit of the languages providing inspiration, but implements in a way that makes sense for Ruby. Keeps the semantics as idiomatic Ruby as possible, supports features that make sense in Ruby. Excludes features that don't make sense in Ruby. It is small, lean, and loosely coupled, thread-safety, and with backward compatibility. Concurrent Ruby makes one of the strongest thread safety guarantees of any Ruby concurrency library, providing consistent behavior and guarantees on all four of the main Ruby interpreters (MRI/CRuby, JRuby, Rubinius, TruffleRuby).