[Ruby] DRuby / static typing talk at UW on 4/9
Scott Laird
scott at sigkill.org
Thu Apr 3 11:52:10 PST 2008
Is anyone interested in a talk on adding static types to Ruby? I'm kind of
dubious on the concept, but it's always interesting to see academics doing
something with Ruby, and the parser looks interesting. I may or not be
there; I'll be flying back from LA around noon that day.
Scott
---------- Forwarded message ----------
From: Dan Grossman <djg at cs.washington.edu>
Date: Wed, Apr 2, 2008 at 4:45 PM
Subject: talk Wed. April 9: Jeff Foster
To: faculty <faculty at cs.washington.edu>, cs-grads - Mailing List <
cs-grads at cs.washington.edu>
Jeff Foster, University of Maryland, will be here next Wednesday, and will
give a talk in the 590P time slot. All are welcome! The topic is quite
timely, and Jeff always gives excellent presentations.
Title: Static Type Inference for Ruby
Abstract: <below>
Time: 3:30-4:30PM, Wednesday April 9
Place: Gates Commons
If you would like to meet with Jeff, sign up here:
http://reserve.cs.washington.edu/visitor/week.php?year=2008&month=04&day=06&area=5&room=1227
--Dan
====
Many general-purpose, object-oriented scripting languages are
dynamically typed, to keep the language flexible and not reject any
programs unnecessarily. However, dynamic typing loses many of the
benefits of static typing, including early error detection and the
useful documentation provided by type annotations. We have been
developing Diamondback Ruby (DRuby), a tool that aims to integrate
static typing into Ruby, a popular object-oriented scripting
language. DRuby makes three main contributions toward this aim.
First, we developed a new GLR parser for Ruby that cleanly separates
the core Ruby grammar from a set disambiguation rules, making the
parser easy to extend. Second, we developed the Ruby Intermediate
Language (RIL), a small, simple subset of Ruby to which we can
translate the entire source language. RIL makes implementing Ruby
analyses much easier than working with the complex surface syntax.
Third, DRuby includes a type annotation language and type inference
system that has important features that allow it to accurately type
Ruby programs. We applied DRuby to a suite of small benchmarks,
and found that most of our benchmarks are statically typeable. We
believe that DRuby makes a major step forward toward the goal of
bringing the benefits of static typing to Ruby and other
object-oriented scripting languages.
Joint work with Mike Furr, David An, and Mike Hicks
More information about the Ruby
mailing list