Rubinius 1.0: The Ruby VM That Could*
This talk will give an overview of Rubinius, an alternative Ruby implementation with a C++ VM, Ruby standard library, and Ruby compiler. It will also detail major recent changes like switching away from stackless execution and improvements in the core library data structures, garbage collector, compiler, and JIT assembler.
Development of alternative Ruby implementations has been fast and furious in 2008. Progress continues on RubyVM/1.9, IronRuby, MagLev, JRuby, MacRuby, and Rubinius. Each implementation offers certain niche advantages over MRI (Matz’s Ruby Implementation).
Rubinius is an alternative Ruby implementation with a C++ VM, Ruby standard library, and Ruby compiler. It supports both the existing C-API for writing extensions as well as the emerging de facto standard FFI (foreign function interface) that is supported on MRI via a gem, and on JRuby natively. Rubinius offers the broadest support of all core features as a replacement for MRI.
Rubinius has been a public open source project for just over two years. In June 2007, Engine Yard began financially supporting the project. In 2008, a number of major milestones were reached, including running Rails on the previous C-language VM and the switch to completely rewritten C++ VM that offers many architectural advantages.
This talk will give an overview of the project and architecture and detail major recent changes like switching away from the stackless execution model and improvements in the core library data structures, garbage collector, compiler, and JIT assembler. Challenges implementing Ruby and getting the flagship web application framework, Rails, running again can be discussed depending on audience interest.
Engine Yard, Inc
I currently work full-time on Rubinius for Engine Yard. I am interested in programming languages and visual design as both are essential to communication in our digital age.
- Title: RubySpec: What does my Ruby do?
- Track: Hacks
- Room: Broadway
- Time: 11:20am – 12:05pm
RubySpec is a project to write a complete, executable specification for the Ruby programming language. If organizing Ruby programmers is akin to herding cats, imagine what it’s like to organize Ruby language implementers. We will talk about the history of RubySpec, how it works, challenges along the way, and the current status.
- Speakers: Brian Ford