The Future of JRuby
summary
Roadmap announces JRuby 9000 IR compiler that emits an intermediate representation for semantic optimizations, targets Ruby 2.x compatibility, and likely drops 1.8/1.9 support and maybe requires Java 7. Performance work uses JVM improvements and invoke dynamic (claiming JVM-driven gains up to 300× over a stagnant baseline), explores Graal/Truffle (prototype 5–6× faster), and plans IR persistence plus nailgun to cut startup time. Concurrency features include thread-safe collections, persistent-data Hamster, atomic updates, and FFI/XNI for native bindings; single JVM processes handle tens of thousands of concurrent requests.
AI-written summary · about
chapters (60)
- 0:00Intro
- 4:03The Basics
- 4:53JRuby vs Java
- 5:46JRuby
- 6:02JRuby Basics
- 6:50Release Roadmap
- 7:38JRuby 9000
- 8:02Main Changes
- 8:28Why JRuby
- 8:41The Team
- 9:21Performance
- 10:03Garbage Collection
- 10:40Ruby Features
- 11:04JVM Development
- 11:19Continuous Improvement
- 11:30Performance First
- 12:07Dynamic Invoke
- 12:33Ruby vs JRuby
- 12:43MRuby
- 13:09Rubinius
- 14:29Other Options
- 15:29Example
- 15:51Grawl
- 17:02Whats Next
- 17:34Concurrency
- 18:14Multicore
- 19:00Memory
- 19:32Concurrency is hard
- 19:50Unsafe things
- 21:11ThreadSafe
- 21:44Hamster
- 22:58Atomic Example
- 23:48Go
- 24:23Go Pinger
- 24:57Celluloid
- 25:56Why not ruby
- 26:21C extensions
- 26:37Performance issues
- 27:11Alternatives
- 27:32Swing API
- 28:09Fif
- 28:31Fif Example
- 29:08ffigen
- 29:53rdoc
- 30:12xni
- 31:03xi
- 31:26startup time
- 31:38native code
- 32:16child processes
- 32:48Drip
- 33:25Persistence
- 33:40Size
- 34:40Conclusion
- 35:47What is IR
- 36:00What is AST
- 36:39Integration with JMX
- 37:09JMX Gem
- 37:49JRuby Extensions
- 41:30CommercialJVMs
- 41:46Web Developers








