Results 1 
5 of
5
HMF: Simple type inference for firstclass polymorphism
, 2008
"... HMF is a conservative extension of HindleyMilner type inference with firstclass polymorphism. In contrast to other proposals, HML uses regular System F types and has a simple type inference algorithm that is just a small extension of the usual DamasMilner algorithm W. Given the relative simplicit ..."
Abstract

Cited by 14 (0 self)
 Add to MetaCart
HMF is a conservative extension of HindleyMilner type inference with firstclass polymorphism. In contrast to other proposals, HML uses regular System F types and has a simple type inference algorithm that is just a small extension of the usual DamasMilner algorithm W. Given the relative simplicity and expressive power, we feel that HMF can be an attractive type system in practice. There is a reference implementation of the type system available online together with
Julien Cretin, Didier Rémy Domaine: Algorithmique, programmation, logiciels et architectures
"... apport de recherche ..."
On the Power of Coercion Abstraction Julien Cretin
"... Erasable coercions in System Fη, also known as retyping functions, are welltyped ηexpansions of the identity. They may change the type of terms without changing their behavior and can thus be erased before reduction. Coercions in Fη can model subtyping of known types and some displacement of quant ..."
Abstract
 Add to MetaCart
Erasable coercions in System Fη, also known as retyping functions, are welltyped ηexpansions of the identity. They may change the type of terms without changing their behavior and can thus be erased before reduction. Coercions in Fη can model subtyping of known types and some displacement of quantifiers, but not subtyping assumptions nor certain forms of delayed type instantiation. We generalize Fη by allowing abstraction over retyping functions. We follow a general approach where computing with coercions can be seen as computing in the λcalculus but keeping track of which parts of terms are coercions. We obtain a language where coercions do not contribute to the reduction but may block it and are thus not erasable. We recover erasable coercions by choosing a weak reduction strategy and restricting coercion abstraction to valueforms or by restricting abstraction to coercions that are polymorphic in their domain or codomain. The latter variant subsumes Fη, F<:, and MLF in a unified framework.
Sumission to POPL 2012 Extending System Fη with Abstraction over Erasable Coercions
"... Erasable coercions in System Fη, also known as retyping functions, are welltyped ηexpansions of the identity. They may change the type of terms without changing their behavior and can thus be erased before reduction. Coercions in Fη can model subtyping of known types and some displacement of quant ..."
Abstract
 Add to MetaCart
Erasable coercions in System Fη, also known as retyping functions, are welltyped ηexpansions of the identity. They may change the type of terms without changing their behavior and can thus be erased before reduction. Coercions in Fη can model subtyping of known types and some displacement of quantifiers, but not subtyping assumptions nor certain form of delayed type instantiation. We generalize Fη by allowing abstraction over retyping functions. We follow a general approach where computing with coercions can be seen as computing in the λcalculus but keeping track of which parts of terms are coercions. We obtain a language where coercions do not contribute to the reduction but may block it and are thus not erasable. We recover erasable coercions by choosing a weak reduction strategy and restricting coercion abstraction to valueforms or by restricting abstraction to coercions that are polymorphic in their domain or codomain. The latter variant subsumes Fη, F<:, and MLF in a unified framework.