Team Moscova

Overall Objectives
Scientific Foundations
Application Domains
New Results
Other Grants and Activities

Section: New Results

Integrating Typed and Untyped Code in a Scripting Language

Participants : Jan Vitek [ Purdue University ] , Tobias Wrigstad [ Purdue University ] , Francesco Zappa Nardelli.

Many large software systems originate from untyped scripting lan- guage code. While good for initial development, the lack of static type annotations can impact code-quality and performance in the long run.

In collaboration with Jan Vitek and Tobias Wrigstad (Purdue University), we studied an approach for integrating untyped code and typed code in the same system to allow an initial prototype to smoothly evolve into an efficient and robust program. We introduced like types , a novel intermediate point between dynamic and static typing. Occurrences of like types variables are checked statically within their scope but, as they may be bound to dynamic values, their usage is checked dynamically. Thus like types provide some of the benefits of static typing without decreasing the expressiveness of the language.

We provided a formal account of like types in a core object calculus and evaluated their applicability in the context of a new scripting language.

A paper describing our approach has been accepted in POPLĀ [16] , while the implementation in the Thorn programming language (developed by Purdue University and IBM) is available from .


Logo Inria