
TruffleRuby Native: Fast Even for Short Scripts
Introduction Nowadays, it seems every major Ruby implementation has a Just-In-Time (JIT) compiler. Recently, YARV-MJIT has been merged to MRI (CRuby) trunk. JRuby relies on the Java...

From an obfuscated Sudoku to Fibers and coroutines
TRICK is the Transcendental Ruby Imbroglio Contest for RubyKaigi, a contest for interesting & weird (transcendental, imbroglio) Ruby programs. I participated in the 2015 edition and won the 4th prize....

Finding Thread errors early with Thread.report_on_exception
Ruby 2.4 introduced Thread.report_on_exception to print exceptions to $stderr when a Thread dies from an exception. However, it was disabled by default. In Ruby 2.5, I made

Running Optcarrot, a Ruby NES emulator, at 150 fps with the GUI!
TruffleRuby runs Optcarrot, a NES emulator written in Ruby, at 150 fps while playing a NES game. As we can see in the GIF, performance gets better...
RubySpec is Reborn!
Reposted from the ruby/spec blog post and slightly updated. TL;DR The Ruby Spec Suite is actively maintained at ruby/spec and MRI, JRuby, Opal and...