Ruby

The Ultimate Guide to Gemfile and Gemfile.lock

In-depth overview of what a Gemfile is and how a Gemfile works.

Ruby 3.1 introduces Variable Width Allocation for Strings

In this blog let us understand how Variable Width Allocation works in Ruby

How does Ruby manage memory?

Each programming language has its version of memory management so, let us look into how Ruby does this under the hood.

Ruby Fibers 101

Ruby 3 focuses more on concurrency with the introduction of Ruby Fibers and the Fiber Scheduler Interface.

Ruby 3.1 adds error highlighting gem

With changes in Ruby 3.1, we will be able to know which object is nil when an error gets raised.

Ruby 3.1 adds Class#subclasses

Ruby 3.1's new method Class#subclasses returns all classes directly from the receiver without adding singleton classes.

Ruby 3.1 adds Class#descendants

With Ruby 3.1, we can use `Class#descendants` to yield the classes that have been directly or indirectly derived from a specific class.

Ruby 3.1 adds MatchData#match and MatchData#match_length

Ruby 3.1 MatchData#match returns the substring corresponding to the argument, while MatchData#match_length returns the length of the captured substring.

Ruby 3.1 allows value omission in hash literals

Ruby 3.1 adds the ability to use hash literals without having a value.

Ruby 3.1 adds try_convert method to Integer class for implicit conversions

try_convert for Integer will convert the object into an instance of the class via the implicit conversion method to_int and returns nil if no implicit conversion method is defined.