Compilers for polymorphic languages can use run-time type inspection to support advanced implementation techniques such as tagless garbage collection, polymorphic marshalling, and flattened data structures. Intensional type analysis is a type-theoretic framework for expressing and certifying such type-analyzing computations. Unfortunately, existing approaches to intensional analysis do not work well on quantified types such as existential or polymorphic types. This makes it impossible to code (in a type-safe language) applications such as garbage collection, persistency, or marshalling which must be able to examine the type of any run-time value. We present a typed intermediate language that supports the analysis of quantified types. In par...
Our objective is to understand the notion of type in programming languages, present a model of typed...
AbstractReynolds's abstraction theorem [John C. Reynolds. Types, abstraction and parametric polymorp...
to find the "best" or "most general" type (called the principal type in the case...
Compilers for polymorphic languages can use runtime type in-spection to support advanced implementat...
Intensional polymorphism, the ability to dispatch to different routines based on types at run time...
Intensional polymorphism, the ability to dispatch to dierent routines based on types at run time, en...
Intensional polymorphism, the ability to dispatch to different routines based on types at run time, ...
Run-time type dispatch enables a variety of advanced optimization techniques for polymorphic languag...
Traditional techniques for implementing polymorphism use auniversal representation for objects of un...
Existential quantification of procedures is introduced as a mechanism for languages with dynamic typ...
Abstract. Preserving types through compilation guarantees safety of the compiler output without trus...
AbstractWe show that a large class of data-flow analyses for imperative languages are describable as...
Type inference is a key component of modern statically typed programming languages. It allows progra...
Modem functional languages feature polymorphic types whose data structures must be fixed, though the...
One of the distinguishing features of Standard ML is the use of type generativity. Each declaration ...
Our objective is to understand the notion of type in programming languages, present a model of typed...
AbstractReynolds's abstraction theorem [John C. Reynolds. Types, abstraction and parametric polymorp...
to find the "best" or "most general" type (called the principal type in the case...
Compilers for polymorphic languages can use runtime type in-spection to support advanced implementat...
Intensional polymorphism, the ability to dispatch to different routines based on types at run time...
Intensional polymorphism, the ability to dispatch to dierent routines based on types at run time, en...
Intensional polymorphism, the ability to dispatch to different routines based on types at run time, ...
Run-time type dispatch enables a variety of advanced optimization techniques for polymorphic languag...
Traditional techniques for implementing polymorphism use auniversal representation for objects of un...
Existential quantification of procedures is introduced as a mechanism for languages with dynamic typ...
Abstract. Preserving types through compilation guarantees safety of the compiler output without trus...
AbstractWe show that a large class of data-flow analyses for imperative languages are describable as...
Type inference is a key component of modern statically typed programming languages. It allows progra...
Modem functional languages feature polymorphic types whose data structures must be fixed, though the...
One of the distinguishing features of Standard ML is the use of type generativity. Each declaration ...
Our objective is to understand the notion of type in programming languages, present a model of typed...
AbstractReynolds's abstraction theorem [John C. Reynolds. Types, abstraction and parametric polymorp...
to find the "best" or "most general" type (called the principal type in the case...