Language designers have in recent years proposed a wealth of richer type systems for programming which seek to extend the range of statically enforced guarantees on data and code. Most such proposals have been evolutionary extensions of ML or Haskell, offering programmers a balanced compromise between expressive strength and existing well-understood technology. Typically they revolve around type- or kind-indexed types such as GADTs, supported by limited equality reasoning at the type-checking level, thus separating the dynamic behaviour of programs from the (simpler) static behaviour of indexing information occurring in their types.I want to argue in this talk for a more radical departure from such practice by examining full spectrum type d...
This thesis studies questions of type inference, unification and elaboration for languages that comb...
Types express a program's meaning, and checking types ensures that a program has the intended meanin...
Dependently typed programming languages allow the type system to express arbitrary propositions of i...
Haskell, as implemented in the Glasgow Haskell Compiler (GHC), has been adding new type-level progra...
Modern programming languages rely on advanced type systems that detect errors at compile-time. While...
Robin Milner coined the slogan well typed programs cannot go wrong, advertising the power of types i...
Haskell, as implemented in the Glasgow Haskell Compiler (GHC), has been adding new type-level progra...
Programming languages based on dependent type theory promise two great advances: flexibility and sec...
The definition of type equivalence is one of the most important design issues for any typed language...
Static typing is one of the most prominent techniques in the design of programming languages for mak...
Dependent types can make your developments (be they programs or proofs) dramatically safer by allowi...
The mechanism for declaring datatypes in functional programming languages such as ML and Haskell is ...
Dependently typed programming languages provide a powerful tool for proving code correct. However, t...
Dependent type theory is a powerful logic for both secure programming and computer assisted proving ...
This thesis studies questions of type inference, unification and elaboration for languages that comb...
This thesis studies questions of type inference, unification and elaboration for languages that comb...
Types express a program's meaning, and checking types ensures that a program has the intended meanin...
Dependently typed programming languages allow the type system to express arbitrary propositions of i...
Haskell, as implemented in the Glasgow Haskell Compiler (GHC), has been adding new type-level progra...
Modern programming languages rely on advanced type systems that detect errors at compile-time. While...
Robin Milner coined the slogan well typed programs cannot go wrong, advertising the power of types i...
Haskell, as implemented in the Glasgow Haskell Compiler (GHC), has been adding new type-level progra...
Programming languages based on dependent type theory promise two great advances: flexibility and sec...
The definition of type equivalence is one of the most important design issues for any typed language...
Static typing is one of the most prominent techniques in the design of programming languages for mak...
Dependent types can make your developments (be they programs or proofs) dramatically safer by allowi...
The mechanism for declaring datatypes in functional programming languages such as ML and Haskell is ...
Dependently typed programming languages provide a powerful tool for proving code correct. However, t...
Dependent type theory is a powerful logic for both secure programming and computer assisted proving ...
This thesis studies questions of type inference, unification and elaboration for languages that comb...
This thesis studies questions of type inference, unification and elaboration for languages that comb...
Types express a program's meaning, and checking types ensures that a program has the intended meanin...
Dependently typed programming languages allow the type system to express arbitrary propositions of i...