Benoit Daloze
eregon.me
Benoit Daloze
@eregon.me
Expert in dynamic language runtimes and JIT compilation, TruffleRuby lead, Rubyist.
https://eregon.me
Joined the #Ruby dev meeting this morning at 7:30am local time, lasted until 10am, eating some ramen now to recover 😅
January 14, 2026 at 1:39 PM
Reposted by Benoit Daloze
Very cool research made it into TruffleRuby!
TruffleRuby kicks off the year with a new website, a new release, and a blog post to go with it! 🎉
truffleruby.dev/blog/truffle...
Many changes:
* New versioning
* Thread-safe Hash
* No system dependencies anymore
* Installs in 2 seconds
* Development is now fully in the open
TruffleRuby 33 is Released
TruffleRuby 33.0.0 is released and available on GitHub, in your favorite Ruby installer, and on Maven Central!
truffleruby.dev
January 13, 2026 at 9:39 PM
Reposted by Benoit Daloze
This is a huge release for TruffleRuby. It’s our first under our new org.

If you’ve been hesitant about contributing because of the CLA, please note that we no longer have one. We can also release more frequently so please report bugs or open PRs.
TruffleRuby kicks off the year with a new website, a new release, and a blog post to go with it! 🎉
truffleruby.dev/blog/truffle...
Many changes:
* New versioning
* Thread-safe Hash
* No system dependencies anymore
* Installs in 2 seconds
* Development is now fully in the open
TruffleRuby 33 is Released
TruffleRuby 33.0.0 is released and available on GitHub, in your favorite Ruby installer, and on Maven Central!
truffleruby.dev
January 13, 2026 at 8:50 PM
Reposted by Benoit Daloze
TruffleRuby kicks off the year with a new website, a new release, and a blog post to go with it! 🎉
truffleruby.dev/blog/truffle...
Many changes:
* New versioning
* Thread-safe Hash
* No system dependencies anymore
* Installs in 2 seconds
* Development is now fully in the open
TruffleRuby 33 is Released
TruffleRuby 33.0.0 is released and available on GitHub, in your favorite Ruby installer, and on Maven Central!
truffleruby.dev
January 13, 2026 at 8:38 PM
Last year I had the pleasure to review and contribute to this paper by @ko1s.bsky.social: atdot.net/~ko1/activit...
It's a tiny framework to partial evaluate AST interpreters written in C. The paper uses the example of a minimal subset of Ruby called naruby (Not A Ruby).
January 7, 2026 at 1:52 PM
Reposted by Benoit Daloze
Had a good inspiring break?

Tell us about your latest ideas on language implementations, compilers, and VMs: 2026.programming-conference.org/home/MoreVMs...

Can be just a short abstract, or something slightly more technical if preferred.

Deadline in about a week, Jan 12th.
a black cat is using an apple laptop with the words deadline is coming written below it
Alt: cat is typing furiously on a laptop
media.tenor.com
January 5, 2026 at 4:56 PM
Just merged a gargantuan PR: 340k lines & 3000 files changed, 128 comments 🎆🚀

It's the import of Ruby 3.4 in TruffleRuby: github.com/truffleruby/...
MRI 3.4.7 import by nirvdrum · Pull Request #4028 · truffleruby/truffleruby
This PR imports MRI 3.4.7, including making necessary adjustments due to the promotion of several default gems to bundled gems. This PR does not include the implementation of any new core library f...
github.com
January 3, 2026 at 6:44 PM
Reposted by Benoit Daloze
ZJIT is available starting in Ruby 4.0! Please try it out on your test suite, maybe in a staging environment, and let us know how it goes!

railsatscale.com/2025-12-24-l...
ZJIT is now available in Ruby 4.0
ZJIT is now available with the release of Ruby 4.0. Here’s an update of our progress.
railsatscale.com
December 24, 2025 at 3:50 PM
Reposted by Benoit Daloze
#rubyrelease30th I’d like to introduce Aliki, RDoc and docs.ruby-lang.org’s new theme 😄
railsatscale.com/2025-12-22-i...
Introducing Aliki: A Modern Theme for Ruby Documentation
Ruby’s documentation gets a fresh look. Starting with RDoc 7.0.0, Aliki is the new default theme—bringing dark mode, better search, and a modern layout to docs.ruby-lang.org and gem documentation.
railsatscale.com
December 23, 2025 at 4:47 PM
Reposted by Benoit Daloze
Finally, www.ruby-lang.org/en/ has a new design.
December 20, 2025 at 8:07 AM
Reposted by Benoit Daloze
Reposted by Benoit Daloze
We were very proud to present @marcoroth.dev with the Rails Luminary Award 2025.

And yes, I was on a secret mission to Zurich 😀.

rubyonrails.org/2025/12/17/m...
Congrats Marco Roth: 2025 Rails Luminary
We are stoked to share that the Rails Core team has announced Marco Roth as the 2025 Rails Luminary.
rubyonrails.org
December 17, 2025 at 11:10 PM
Reposted by Benoit Daloze
I'm really happy to see @marcoroth.dev receive the 2025 Rails Luminary Award! 🎉

He’s done so much for the Rails ecosystem and the Ruby community.

Huge congrats, Marco! 🙌

And it's great to have @fxn.bsky.social and @amandabrooke.bsky.social around.

#rails #RubyOnRails #ReActionView #herb
December 17, 2025 at 7:55 PM
Reposted by Benoit Daloze
One thing I'm really excited about in Ruby 4.0 is that object allocation is going to get a nice speed boost
December 13, 2025 at 8:09 PM
concurrent-ruby 1.3.6 is released: github.com/ruby-concurr...
It automatically prunes unused threads of a thread pool even when no new work is queued, migrates away from the deprecated "non-typed data" C API and includes several bug fixes.
Release v1.3.6 · ruby-concurrency/concurrent-ruby
What's Changed Run tests without the C extension in CI by @eregon in #1081 Fix typo in Promise docs by @danieldiekmeier in #1083 Correct word in readme by @wwahammy in #1084 Fix mistakes in MVar d...
github.com
December 13, 2025 at 12:53 PM
Reposted by Benoit Daloze
Inverted Catenaries

xkcd.com/3176/
December 8, 2025 at 6:41 PM
If anyone is looking for an easy pure-Ruby contribution to TruffleRuby, here is one: github.com/truffleruby/...
File.path should check for \0 · Issue #4047 · truffleruby/truffleruby
$ ruby -ve 'File.path "\0"' ruby 3.3.5 (2024-09-03 revision ef084cc8f4) [x86_64-linux] -e:1:in `path': path name contains null byte (ArgumentError) File.path "\0" ^^^^ from -e:1:in `<main>' $ ruby ...
github.com
December 6, 2025 at 5:09 PM
Reposted by Benoit Daloze
It is time. I was going to hold off, release in bulk. When all were ready. Stina suggested an advent calendar. And I try to heed her wisdom.

Goatcember begins!

Marc Lainez gave us this fantastic start on his teams work on The Nerves Car.

goatmire.bold.video/v/ywpqe
#elixirlang
A Nerves Car - Marc Lainez
In december 2023, Loïc, Thibault and Marc embarked on a journey to convert a 2007 VW Polo into an EV. At Elixirconf 2024, they presented their early prototype showing the car's wheels spinning and…
goatmire.bold.video
December 1, 2025 at 9:56 PM
Could it be any clearer Trump is just Putin's puppet?
Or that the plan is just to make it easier for Russia to attack Ukraine the next time?
How can US people live with themselves knowing their president is just the puppet of a serial genocide maker?
www.theguardian.com/world/2025/n...
Zelenskyy says Ukraine has impossible choice as Trump pushes plan to end war
US president demands that Kyiv accepts plan that would mean giving up territory to Russia
www.theguardian.com
November 22, 2025 at 8:33 AM
Reposted by Benoit Daloze
Extended an existing doc to explain Ruby’s VM stack, which I learned from my ZJIT work:

docs.ruby-lang.org/en/master/co...
vm_stack_and_frames - Documentation for Ruby 4.0
vm_stack_and_frames: Ruby VM Stack and Frame Layout This document explains the Ruby VM stack architecture, including how the value stack (SP) and control frames (CFP) sha
docs.ruby-lang.org
November 18, 2025 at 7:05 PM
Reposted by Benoit Daloze
I'm making another attempt to get a `deep_freeze` method added to Ruby. Core folks have rejected proposals for years, until Ractor came along and we got basically the same feature in `make_shareable`. But deep freezing should be its own feature.

bugs.ruby-lang.org/issues/21665
Feature #21665: Revisit Object#deep_freeze to support non-Ractor use cases - Ruby - Ruby Issue Tracking System
Redmine
bugs.ruby-lang.org
November 4, 2025 at 12:18 AM
Announcing ractor-shim, a new gem that reimplements Ractor on top of Thread & Queue: github.com/eregon/racto...

This gem provides the full Ruby 3.5 Ractor API (Ractor::Port, Ractor#{join,value,monitor}, etc) on TruffleRuby, JRuby, and CRuby 2.7 to 3.4.
GitHub - eregon/ractor-shim: A shim to define Ractor by using Thread, if not already defined
A shim to define Ractor by using Thread, if not already defined - eregon/ractor-shim
github.com
October 30, 2025 at 9:01 PM
pkl-lang.org migrated from a ANTLR parser to manual parser, result: twice as fast.
From Islon Scherer at the #GraalVM Community Summit
October 23, 2025 at 7:47 AM
Reposted by Benoit Daloze
I wrote about some of my thoughts on the lessons we can learn from the RubyGems situation and how we can move forward. blog.peterzhu.ca/open-source-...
Open Source is the Most Fragile and Most Resilient Ecosystem - Peter Zhu
Some of my thoughts on the lessons we can learn from the RubyGems situation and how we can move forward.
blog.peterzhu.ca
October 18, 2025 at 3:58 PM
Reposted by Benoit Daloze
Can We Know Whether a Profiler is Accurate?

Spoiler: yes we can! But it took us figuring out a way to work around the fundamental observer effect.

stefan-marr.de/2025/10/can-...

If you're at SPLASH, don't miss our talk at VMIL today and at OOPSLA on Saturday!
Can We Know Whether a Profiler is Accurate?
Measuring causes profiles to change, so is there a way to work around it and know whether a profile is accurate?
stefan-marr.de
October 15, 2025 at 12:41 AM