Static type inference for Ruby

Sander Sõnajalg

Slides from the talk [pdf]

Abstract: DRuby is a type inference system for a dynamically typed scripting language Ruby. DRuby first translates any Ruby program to an intermediate representation (a subset of Ruby). Then it applies a set of type interference rules to the analysed source, and unifies it with the predefined type annotations for the Ruby standard library classes, yielding enough information to type-infer most custom Ruby programs. In this talk, we are investigating the formalized type system that was used in order to type the Ruby language, and the formal type inference rules. Examples of type inference trees for simple Ruby snippets are presented to see the type inference in action.

Main references:

Varmo Vene
Last update 3 May 2010