Welcome to another issue of the Newsletter!
July has arrived, actually it is almost over, bringing a fascinating wave of innovation to the static Ruby ecosystem. While summer often slows things down, this month is full of experiments that push static typing beyond traditional boundaries. From JVM integrations to AST-aware signature synthesis and new compiled language experiments, the community is finding novel ways to bring structure to Ruby code.
The standout revelation this month comes from Charles Oliver Nutter, who highlighted how LLM tooling and Chicory WASM are enabling JRuby support for native Ruby libraries. Since RBS static typing relies on a C extension in CRuby, bringing RBS to JRuby was previously a hurdle. Now, with Chicory WASM running native components on the JVM, JRuby support for static typing is poised to take off.
At the same time, static analysis and signature generation are getting smarter. felixefelip introduced rbs_infer, which infers RBS type signatures directly from Ruby source code using static analysis. When managing growing signature collections, structuredmerge has released rbs-merge, an AST-aware tool that intelligently merges RBS files while respecting freeze blocks to protect manual customizations. For schema-driven developers, cinzatech published schematrix to generate Ruby code and matching RBS signatures straight from JSON Schema definitions.
PROMOTION
Level up your Ruby skills with Static Typing!
Master RBS and write more robust, maintainable, and error-free Ruby code. This course gives you practical, real-world techniques you can apply immediately to any Ruby project.
π Start building smarter Ruby software today!
|
The core type checkers themselves continue their steady momentum. The official Ruby team released RBS 4.1.0.pre.2 and RBS 4.0.3, refining Zlib fixtures and memory alignment under aggressive GC. Meanwhile, tk0miya released updates for ruby-lsp-rbs_rails and ruby-lsp-rbs-inline, smoothing out editor integration for inline RBS annotations.
On the Sorbet side of the fence, developers are taking type safety into testing and GraphQL. lukej57 introduced tprop, bringing Hypothesis-inspired property-based testing to Ruby using Sorbet T::Struct types. For API consumers, dpep created graph_weaver, a typed GraphQL client for Ruby that generates Sorbet T::Struct models from queries. On the AI front, vicentereig continues building dspy.rb, using Sorbet runtime validation to write typed, predictable LLM programs in Ruby.
Finally, developer ambition is spilling over into Ruby-flavored compiled languages. Projects like tyra and ruxen are exploring statically-typed, Ruby-syntax languages targeting LLVM, offering zero-null safety and Rust-like ownership semantics. Whether through native gems, IDE plugins, or new language paradigms, typed Ruby keeps growing stronger.
Thanks for reading, and see you next month. βοΈ
Your faithful static typing guy βοΈ
Your essential Static Typing toolset
rbs
official Ruby Signature solution from the Ruby team
βrepoβ
rbs-inline
extension to rbs lets you write signatures in line with your code
βrepoβ
steep
type checker for the Ruby signatures
βrepoβ
sorbet
type signature and type checking solution designed by Stripe
βrepoβ
ruby-lsp
essential toolset and extension, which helps with Ruby development in the VS Code
βrepoβ
steep VS Code extension
steep integration with the IDE
βrepoβ
rbs syntax VS Code extension
ease the work with RBS signature files
βrepoβ
|
βLet's do TDD - type-driven developmentβ
You can find all the previous issues of the newsletter in my archive.
Iβd really appreciate any feedback that could help improve the newsletter. Feel free to share your thoughts using this form.
Cheers,