The 25th anniversary of Ruby seems like the perfect occasion for the release of the long-awaited Ruby 3.0. Just in a few days, on December 25th, we are going to witness the official release of Ruby’s version 3 and while waiting let’s have a look at some of the new features it brings.
Ruby 3 will introduce the long-awaited Fiber Scheduler for intercepting blocking operations that will allow light-weight concurrency without changing the existing code. This will improve performance and make Ruby 3.0 faster.
Ractor a.k.a. Ruby Actor
Another feature that is set to speed-up the performance is the experimental Actor-like concurrent abstraction - Ractor. It is designed to provide a parallel execution, avoid thread-safety concerns by limiting the object sharing and achieve communication via copying and moving.
Ractor is probably one of the most anticipated features of Ruby 3, and it is expected to significantly improve its performance.
RBS is a type of a signature language that describes the structure of Ruby programs. Its goal is to support common patterns in Ruby programs and to allow the writing of advanced types such as method overloading, union types and generics.
Ruby 3.0 comes with RBS gem that will allow parsing and processing types definitions that are written in RBS.
Other features worth mentioning are:
- 50 to 500% increased speed of a compiling program by JIT
- Numbered block parameters
- Right assignment
- Added Endless method definition
- Added Find pattern
Team Funding Circle at Questers has been using Ruby to build a leading online marketplace for small business loans. Their team continues to grow, we are looking for passionate engineers to join it. Learn more here.