Abstract. In modern statically typed functional languages, type inference is used to determine the type of each function automatically. Whenever this fails, the compiler emits an error message that is often very complex. Sometimes the expression mentioned in the type error message is not the one that is wrong. We therefore implement an interactive tool that allows programmers to browse through the source code of their program and query the types of each expression. If a variable cannot be typed, we would like to present a set of possible types from which the user can decide which is wrong. This should help finding the origin of type errors without detailed knowledge of type inference on the user side.
This chapter presents a static diagnosis tool that locates type errors in untyped CLP programs witho...
The type systems of most typed functional programming languages are based on the Hindley-Milner type...
use of program operations. They can be classified as either static or dynamic depending on when they...
In modern statically typed functional languages, type inference is used to determine the type of eac...
Although type systems do detect type errors in programs, they often produce uninformative error mes...
Static type systems are a powerful tool for reasoning about the safety of programs. Global type infe...
Typically a type error is reported when unication fails, even though the programmer 's actual e...
Flaws in computer software are a fact of life, both in small and large-scale applications. Compile...
Producing precise and helpful error messages for type inference is\ud still a challenge for implemen...
Dependently typed programming languages provide a powerful tool for proving code correct. However, t...
Modern programming languages rely on advanced type systems that detect errors at compile-time. While...
Type systems for programming languages can be used by compilers to reject programs which are found t...
Providing IDE support for a programming language or a DSL (Domain Specific Language) helps the users...
Although dynamically typed languages allow developers to be more productive in writing source code, ...
Customizable type error diagnosis has been proposed as a solution to achieve domain-specific type er...
This chapter presents a static diagnosis tool that locates type errors in untyped CLP programs witho...
The type systems of most typed functional programming languages are based on the Hindley-Milner type...
use of program operations. They can be classified as either static or dynamic depending on when they...
In modern statically typed functional languages, type inference is used to determine the type of eac...
Although type systems do detect type errors in programs, they often produce uninformative error mes...
Static type systems are a powerful tool for reasoning about the safety of programs. Global type infe...
Typically a type error is reported when unication fails, even though the programmer 's actual e...
Flaws in computer software are a fact of life, both in small and large-scale applications. Compile...
Producing precise and helpful error messages for type inference is\ud still a challenge for implemen...
Dependently typed programming languages provide a powerful tool for proving code correct. However, t...
Modern programming languages rely on advanced type systems that detect errors at compile-time. While...
Type systems for programming languages can be used by compilers to reject programs which are found t...
Providing IDE support for a programming language or a DSL (Domain Specific Language) helps the users...
Although dynamically typed languages allow developers to be more productive in writing source code, ...
Customizable type error diagnosis has been proposed as a solution to achieve domain-specific type er...
This chapter presents a static diagnosis tool that locates type errors in untyped CLP programs witho...
The type systems of most typed functional programming languages are based on the Hindley-Milner type...
use of program operations. They can be classified as either static or dynamic depending on when they...