Ruby doesn't want to send people to threading hell... non-deterministic bugs when multiple threads are involved.
Introduce easy and parallel concurrent abstraction.
Enter Ractor. Limited object sharing between ractors.
You can declare a shared frozen object:
Push type communication
Ractor.receive is an infinite queue.
Send an object from one Ractor to another
parallel pipeline in ractors:
Worker pools in Ractors: