Bidirectional ty**
J Dunfield, N Krishnaswami - ACM Computing Surveys (CSUR), 2021 - dl.acm.org
Bidirectional ty** combines two modes of ty**: type checking, which checks that a
program satisfies a known type, and type synthesis, which determines a type from the …
program satisfies a known type, and type synthesis, which determines a type from the …
A history of Haskell: being lazy with class
A history of Haskell Page 1 A History of Haskell: Being Lazy With Class Paul Hudak Yale
University paul.hudak@yale.edu John Hughes Chalmers University rjmh@cs.chalmers.se …
University paul.hudak@yale.edu John Hughes Chalmers University rjmh@cs.chalmers.se …
Simple unification-based type inference for GADTs
Generalized algebraic data types (GADTs), sometimes known as" guarded recursive data
types" or" first-class phantom types", are a simple but powerful generalization of the data …
types" or" first-class phantom types", are a simple but powerful generalization of the data …
System F with type equality coercions
We introduce System FC, which extends System F with support for non-syntactic type
equality. There are two main extensions:(i) explicit witnesses for type equalities, and (ii) …
equality. There are two main extensions:(i) explicit witnesses for type equalities, and (ii) …
OutsideIn (X) Modular type inference with local assumptions
Advanced type system features, such as GADTs, type classes and type families, have
proven to be invaluable language extensions for ensuring data invariants and program …
proven to be invaluable language extensions for ensuring data invariants and program …
On type-cases, union elimination, and occurrence ty**
G Castagna, M Laurent, K Nguyễn… - Proceedings of the ACM on …, 2022 - dl.acm.org
We extend classic union and intersection type systems with a type-case construction and
show that the combination of the union elimination rule of the former and the ty** rules for …
show that the combination of the union elimination rule of the former and the ty** rules for …
Complete and decidable type inference for GADTs
GADTs have proven to be an invaluable language extension, for ensuring data invariants
and program correctness among others. Unfortunately, they pose a tough problem for type …
and program correctness among others. Unfortunately, they pose a tough problem for type …
A quick look at impredicativity
Type inference for parametric polymorphism is wildly successful, but has always suffered
from an embarrassing flaw: polymorphic types are themselves not first class. We present …
from an embarrassing flaw: polymorphic types are themselves not first class. We present …
A monadic framework for delimited continuations
Delimited continuations are more expressive than traditional abortive continuations and they
apparently require a framework beyond traditional continuation-passing style (CPS). We …
apparently require a framework beyond traditional continuation-passing style (CPS). We …
Dependent ml an approach to practical programming with dependent types
H ** - Journal of Functional Programming, 2007 - cambridge.org
We present an approach to enriching the type system of ML with a restricted form of
dependent types, where type index terms are required to be drawn from a given type index …
dependent types, where type index terms are required to be drawn from a given type index …