The ML type system was originally introduced as a means of identifying a class of terms in a simple untyped language, often referred to as core-ML, whose evaluation could be guaran...
Polymorphic equality is a controversial language construct. While being convenient for the programmer, it has been argued that polymorphic equality (1) invites to violation of soft...
This paper proposes a type-and-effect system called Teq, which distinguishes terminating terms and total functions from possibly diverging terms and partial functions, for a lambd...
The efficient representation and manipulation of data is one of the fundamental tasks in the construction of large software systems. Parametric polymorphism has been one of the mo...
Michael Abbott, Thorsten Altenkirch, Neil Ghani, C...
We present new sound and complete axiomatizations of type equality and subtype inequality for a first-order type language with regular recursive types. The rules are motivated by ...