Results 1 
4 of
4
Simple unificationbased type inference for GADTs
, 2006
"... Generalized algebraic data types (GADTs), sometimes known as “guarded recursive data types ” or “firstclass phantom types”, are a simple but powerful generalization of the data types of Haskell and ML. Recent works have given compelling examples of the utility of GADTs, although type inference is k ..."
Abstract

Cited by 158 (34 self)
 Add to MetaCart
Generalized algebraic data types (GADTs), sometimes known as “guarded recursive data types ” or “firstclass phantom types”, are a simple but powerful generalization of the data types of Haskell and ML. Recent works have given compelling examples of the utility of GADTs, although type inference is known to be difficult. Our contribution is to show how to exploit programmersupplied type annotations to make the type inference task almost embarrassingly easy. Our main technical innovation is wobbly types, which express in a declarative way the uncertainty caused by the incremental nature of typical typeinference algorithms.
Semantics and Syntax for Ordinal Notations and Hierarchies
"... We give a complete description of a class of free infinitary algebras in the category of posets. They are represented as functors to the ordinal\Omega\Gamma One of these algebras is used to define an ordinal notation system based on the simply typed lambda calculus, and prove its soundness. As an ap ..."
Abstract
 Add to MetaCart
We give a complete description of a class of free infinitary algebras in the category of posets. They are represented as functors to the ordinal\Omega\Gamma One of these algebras is used to define an ordinal notation system based on the simply typed lambda calculus, and prove its soundness. As an application the Slow Growing and Hardy hierarchies are described in that calculus. The literature on ordinal notations is already quite extensive. There is a particular class of ordinal notations which is based on the notion of fundamental sequence: a countable ordinal ff is defined in terms of a sequence ( i ) i2! that converges to it. Such notations are especially important for describing hierarchies of numerical functions [Grz53, LW70a, LW70b]. This is due to the operation of diagonalization, which takes a family (f n ) n2N of numerical functions and produces one which is "above" it, i.e. more complex. This operation is similar to the limit of a chain of ordinals, but this is not enough to...
Abstract Simple Unificationbased Type Inference for GADTs
"... Generalized algebraic data types (GADTs), sometimes known as “guarded recursive data types ” or “firstclass phantom types”, are a simple but powerful generalization of the data types of Haskell and ML. Recent works have given compelling examples of the utility of GADTs, although type inference is k ..."
Abstract
 Add to MetaCart
Generalized algebraic data types (GADTs), sometimes known as “guarded recursive data types ” or “firstclass phantom types”, are a simple but powerful generalization of the data types of Haskell and ML. Recent works have given compelling examples of the utility of GADTs, although type inference is known to be difficult. Our contribution is to show how to exploit programmersupplied type annotations to make the type inference task almost embarrassingly easy. Our main technical innovation is wobbly types, which express in a declarative way the uncertainty caused by the incremental nature of typical typeinference algorithms. Categories and Subject Descriptors D.3.3 [PROGRAMMING