Many properties of parametric, polymorphic functions can be determined simply by inspection of their types. Such results are usually proven using Reynolds's parametricity theorem. However, Reynolds's theorem can be difficult to show in some settings, particularly ones involving computational effects. I present an alternative technique for proving some parametricity results. This technique is considerably simpler and easily generalizes to effectful settings. It works by instantiating polymorphic functions with singleton types that fully specify the behavior of the functions. Using this technique, I show that callers' stacks are protected from corruption during function calls in Typed Assembly Language programs. 1 Introduction ...
Parametric polymorphism constrains the behavior of pure functional pro-grams in a way that allows th...
Udgivelsesdato: August 9, 2009According to Strachey, a polymorphic program is parametric if it appli...
The covariant type system is rich enough to represent polymorphism on inductive types, such as lists...
AbstractA polymorphic function is parametric if its behavior does not depend on the type at which it...
Parametricity is one of the foundational principles which underpin our understanding of modern progr...
This thesis revisits the well-known notion of parametric polymorphismin the light of modern developm...
Parametric polymorphism constrains the behavior of pure functional programs in a way that allows the...
There is a middle ground between parametric and ad-hoc polymorphism in which a computation can depen...
This thesis revisits the well-known notion of parametric polymorphism in the light of modern develop...
There has long been speculation in the scientific literature on how to dynamically enforce parametri...
We propose that the phenomenon of local state may be understood in terms of Strachey 's concept...
add parametric polymorphism to languages that combine static and dynamic typing. We present a system...
265 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2002.The strength of this notion o...
This paper is concerned with testing properties of polymorphic functions. The problem is that testin...
In the polymorphic �-calculus, one may explicitly define functions that take a type as input and ret...
Parametric polymorphism constrains the behavior of pure functional pro-grams in a way that allows th...
Udgivelsesdato: August 9, 2009According to Strachey, a polymorphic program is parametric if it appli...
The covariant type system is rich enough to represent polymorphism on inductive types, such as lists...
AbstractA polymorphic function is parametric if its behavior does not depend on the type at which it...
Parametricity is one of the foundational principles which underpin our understanding of modern progr...
This thesis revisits the well-known notion of parametric polymorphismin the light of modern developm...
Parametric polymorphism constrains the behavior of pure functional programs in a way that allows the...
There is a middle ground between parametric and ad-hoc polymorphism in which a computation can depen...
This thesis revisits the well-known notion of parametric polymorphism in the light of modern develop...
There has long been speculation in the scientific literature on how to dynamically enforce parametri...
We propose that the phenomenon of local state may be understood in terms of Strachey 's concept...
add parametric polymorphism to languages that combine static and dynamic typing. We present a system...
265 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2002.The strength of this notion o...
This paper is concerned with testing properties of polymorphic functions. The problem is that testin...
In the polymorphic �-calculus, one may explicitly define functions that take a type as input and ret...
Parametric polymorphism constrains the behavior of pure functional pro-grams in a way that allows th...
Udgivelsesdato: August 9, 2009According to Strachey, a polymorphic program is parametric if it appli...
The covariant type system is rich enough to represent polymorphism on inductive types, such as lists...