Dependently typed programming languages provide a powerful tool for proving code correct. However, these languages are complex, and programming in them is often difficult. Certain features, such as pattern matching or inferring values using metavariables, rely on a unification procedure performed during type-checking. When this process fails, the error messages provided are often confusing, and do not accurately indicate which programmer error caused the failure. For functional languages with simple typing, error messages have been improved by expressing type-checking as a constraint-solving problem, performing global analysis on a constraint-graph. While these attempts have been successful, there are a number of differences between depen...
Programming languages based on dependent type theory promise two great advances: flexibility and sec...
Types express a program's meaning, and checking types ensures that a program has the intended meanin...
. A constraint-based method for deriving type declarations from program statements is described. The...
Dependently-typed programming languages provide a powerful tool for establishing code correctness. H...
Although type systems do detect type errors in programs, they often produce uninformative error mes...
Customizable type error diagnosis has been proposed as a solution to achieve domain-specific type er...
Modern programming languages rely on advanced type systems that detect errors at compile-time. While...
Licentiate thesis, 2020 When using popular dependently-typed languages such as Agda, Idris or Coq t...
The definition of type equivalence is one of the most important design issues for any typed language...
Producing precise and helpful error messages for type inference is\ud still a challenge for implemen...
Abstract. Dependent types are useful for statically checking detailed specifications of programs and...
We present a simple type-checker for a language with dependent types and let expressions, with a sim...
Dependent types can specify in detail which inputs to a program are allowed, and how the properties ...
Language designers have in recent years proposed a wealth of richer type systems for programming whi...
Dependently typed programming languages provide a way to write programs, specifications, and correct...
Programming languages based on dependent type theory promise two great advances: flexibility and sec...
Types express a program's meaning, and checking types ensures that a program has the intended meanin...
. A constraint-based method for deriving type declarations from program statements is described. The...
Dependently-typed programming languages provide a powerful tool for establishing code correctness. H...
Although type systems do detect type errors in programs, they often produce uninformative error mes...
Customizable type error diagnosis has been proposed as a solution to achieve domain-specific type er...
Modern programming languages rely on advanced type systems that detect errors at compile-time. While...
Licentiate thesis, 2020 When using popular dependently-typed languages such as Agda, Idris or Coq t...
The definition of type equivalence is one of the most important design issues for any typed language...
Producing precise and helpful error messages for type inference is\ud still a challenge for implemen...
Abstract. Dependent types are useful for statically checking detailed specifications of programs and...
We present a simple type-checker for a language with dependent types and let expressions, with a sim...
Dependent types can specify in detail which inputs to a program are allowed, and how the properties ...
Language designers have in recent years proposed a wealth of richer type systems for programming whi...
Dependently typed programming languages provide a way to write programs, specifications, and correct...
Programming languages based on dependent type theory promise two great advances: flexibility and sec...
Types express a program's meaning, and checking types ensures that a program has the intended meanin...
. A constraint-based method for deriving type declarations from program statements is described. The...