Repository logo
 

Principal typings for interactive ruby programming

Date

2009

Journal Title

Journal ISSN

Volume Title

Publisher

ORCID

Type

Degree Level

Masters

Abstract

A novel and promising method of software development is the interactive style of development, where code is written and incrementally tested simultaneously. Interpreted dynamic languages such as Ruby, Python, and Lua support this interactive development style. However, because they lack semantic analysis as part of a compilation phase, they do not provide type-checking. The programmer is only informed of type errors when they are encountered in the execution of the program–far too late and often at a less-informative location in the code. We introduce a typing system for Ruby, where types will be determined before execution by inferring principal typings. This system overcomes the obstacles that interactive and dynamic program development imposes on type checking; yielding an effective type-checking facility for dynamic programming languages. Our development is embodied as an extension to irb, the Ruby interactive mode, allowing us to evaluate principal typings for interactive development.

Description

Keywords

principal typings, dynamic languages, type inference

Citation

Degree

Master of Science (M.Sc.)

Department

Computer Science

Program

Computer Science

Committee

Citation

Part Of

item.page.relation.ispartofseries

DOI

item.page.identifier.pmid

item.page.identifier.pmcid