Classes are also values in Ruby. Sorbet has two ways to describe the type of these class objects: `T.class_of(...)` and `T::Class[...]`.| sorbet.org
There are five ways to assert the types of expressions in Sorbet:| sorbet.org
| sorbet.org
A solid grasp of the tools Ruby provides for inheritance, like include and extend, helps write better code. But the concepts are often learned hastily—this post revisits them in depth.| blog.jez.io
A series of pictures which show how Rails's ActiveSupport::Concern works to redefine what inheritance means in Ruby.| blog.jez.io
The straightforward attempt at writing a Sorbet signature for a method that calls `klass.new` doesn't work. The strategy that does work uses abstract methods, and so I'd like to walk through an extended example showing how to get such code to typecheck.| blog.jez.io