Diamondback Ruby (DRuby) is an extension to Ruby that aims to bring the benefits of static typing to Ruby without compromising the expressiveness of the language. The main features of DRuby are:


Current Status

While DRuby is an ongoing research project, it already works quite well for small, self-contained Ruby scripts. Currently, it is unable to analyze much of the Ruby standard library “out-of-the-box”. Analyzing such library code is something we’re working toward and have already had some initial success, finding several real programming errors with its analysis.

The DRuby type analysis is built on top of a more general framework for analyzing Ruby programs (which we call RIL — the Ruby Intermediate Language). In future releases, we plan to distribute this framework separately in the hope that other researchers can use RIL to explore their own ideas for Ruby. Until then, a motivated OCaml hacker should already be able to get started with the current tarball, but feel free to email our mailing list if you need help.


Michael Furr
Jong-hoon (David) An
Mark Daly
Benjamin Kirzhner
Avik Chaudhuri
Jeffrey Foster
Michael Hicks


Got a question? Send us an email on our mailing list




Web Accessibility