Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

Parametric polymorphism through run-time sealing or, Theorems for low, low prices!

Summary: Parametric polymorphism through run-time sealing
or, Theorems for low, low prices!
Jacob Matthews1 and Amal Ahmed2
1 University of Chicago jacobm@cs.uchicago.edu
2 Toyota Technological Institute at Chicago amal@tti-c.org
Abstract. We show how to extend System F's parametricity guarantee to a Matthews-
Findler-style multi-language system that combines System F with an untyped
language by use of dynamic sealing. While the use of sealing for this purpose
has been suggested before, it has never been proven to preserve parametricity. In
this paper we prove that it does using step-indexed logical relations. Using this
result we show a scheme for implementing parametric higher-order contracts in
an untyped setting which corresponds to a translation given by Sumii and Pierce.
These contracts satisfy rich enough guarantees that we can extract analogues to
Wadler's free theorems that rely on run-time enforcement of dynamic seals.
1 Introduction
There have been two major strategies for hiding the implementation details of one part
of a program from its other parts: the static approach and the dynamic approach.
The static approach can be summarized by the slogan "information hiding = para-
metric polymorphism." In it, the language's type system is equipped with a facility
such as existential types so that it can reject programs in which one module makes un-


Source: Ahmed, Amal - School of Informatics, Indiana University


Collections: Computer Technologies and Information Sciences