Benoit Daloze

@eregon.me

Expert in dynamic language runtimes and JIT compilation, TruffleRuby lead, Rubyist. https://eregon.me

While his mountain of horrible personal conduct could fill multiple books, one fact in particular stands out: A year ago, Musk’s actions directly led to the deaths of hundreds of thousands of people. He did it knowingly. And, worse — gleefully. Read more: www.theverge.com/tech/949259/...

Verge headline: The world's first trillionaire is a killer
by TC Sottek

Image of Elon Musk doing a "fascist salute" in the form of an oil painting on a wall

I realized it has been ~1.5 years since I concluded my series of post on JSON optimization. So I got curious how much faster it became since then. 2.7.2 was the last version before I took over maintainership. 2.9.0 was the version I released at the end of the blog series.

Bild

What if Ruby 4.0 features could be implemented in pure Ruby? With TruffleRuby, that’s possible: 73% of the core library is written in Ruby itself. We currently have 10 issues tagged [easy, pure Ruby] waiting for contributors: github.com/truffleruby/...

Ruby 4.0 support · Issue #4231 · truffleruby/truffleruby

Any help is appreciated whether it is: implementing one of the Ruby 4.0 changes in TruffleRuby, and ensuring it is tested in specs or MRI tests and otherwise add specs. If adding specs please leave...

github.com

New take about Ruby C extensions: append_cflags "-Wall" or "-Wextra" with -Werror is a bug waiting to explode as it overrides -Wno-$category flags from RbConfig by being added at the end. It's unnecessary too because for Ruby 1.9+ RbConfig::CONFIG["warnflags"] starts with "-Wall -Wextra"

Flying into RubyKaigi, I thought we had months to stand up AI-assisted vulnerability scanning for rubygems.org. Turns out we were out of time. We started prototyping during the conference, scanned the most critical gems, and four hours later submitted our first advisory to Nokogiri.

Scaling Ruby's defenses with AI

On April 23rd, we submitted a vulnerability report to the Nokogiri maintainers. It was the first one our team has filed using AI-assisted scanning. The maintainers accepted the report and published...

blog.rubygems.org

I have been trying mise (from @jdx.dev) and rbenv recently, the winner is clear: $ time ruby -e0 mise: 51ms rbenv: 152ms 100ms overhead is way too much (due to shims). Additionally: * rbenv breaks `which` which causes tricky problems. * mise can install precompiled Rubies (much faster)

C interpreters underlie many of our most widely used language implementations -- but they're slow. Wouldn't it be great if we could turn them into JIT compiling VMs? This video shows what happens when we do just that to the normal Lua VM (first) and "yklua" (Lua w/JIT, second).

Just received a Most Notable Paper Award for our paper “Cross-language compiler benchmarking: are we fast yet?” published at the Dynamic Languages Symposium 2016. Congratulations to my co-authors @stefan-marr.de and Hanspeter Mössenböck!

Bild