Type error messages of compilers of statically typed functional languages are often inaccurate, making type error debugging hard. Many solutions to the problem have been proposed, but most have been evaluated only with short programs, that is, of fewer than 30 lines. In this paper we note that our own tool for delta debugging type errors scales poorly for large programs. In response we present a new tool that applies a new algorithm for segmenting a large program before the delta debugging algorithm is applied. We propose a framework for quantifying the quality of type error debuggers and apply it to our new tool demonstrating substantial improvement
Automatic type inference is a popular feature of functional programming languages. If a program cann...
Static type systems are a powerful tool for reasoning about the safety of programs. Global type infe...
Many different approaches to type error debugging were developed independently. In this paper, we d...
Understanding the cause of a type error can be challenging; for over 30 years, researchers have prop...
Debugging type errors is a necessary process that programmers, both novices and experts alike, face ...
Type errors reported by compilers can sometimes be cryptic, or difficult to understand. In this pape...
Abstract. We present guided type debugging as a new approach to quickly and reliably remove type err...
Type error debugging can be a laborious yet necessary process for programmers of statically typed fu...
Flaws in computer software are a fact of life, both in small and large-scale applications. Compile...
In this work, we present an unexpected connection between gradual typing and type error debugging. N...
Whenever code generation is used to abstract from low-level details or to provide high-level interfa...
Computer Science Inputs causing a program to fail are usually large and often contain information ir...
Although type systems do detect type errors in programs, they often produce uninformative error mes...
Optimizing compilers are large and complex systems, potentially consisting of millions of lines of c...
We propose a testing framework for validating static typing procedures in compilers. Our core compon...
Automatic type inference is a popular feature of functional programming languages. If a program cann...
Static type systems are a powerful tool for reasoning about the safety of programs. Global type infe...
Many different approaches to type error debugging were developed independently. In this paper, we d...
Understanding the cause of a type error can be challenging; for over 30 years, researchers have prop...
Debugging type errors is a necessary process that programmers, both novices and experts alike, face ...
Type errors reported by compilers can sometimes be cryptic, or difficult to understand. In this pape...
Abstract. We present guided type debugging as a new approach to quickly and reliably remove type err...
Type error debugging can be a laborious yet necessary process for programmers of statically typed fu...
Flaws in computer software are a fact of life, both in small and large-scale applications. Compile...
In this work, we present an unexpected connection between gradual typing and type error debugging. N...
Whenever code generation is used to abstract from low-level details or to provide high-level interfa...
Computer Science Inputs causing a program to fail are usually large and often contain information ir...
Although type systems do detect type errors in programs, they often produce uninformative error mes...
Optimizing compilers are large and complex systems, potentially consisting of millions of lines of c...
We propose a testing framework for validating static typing procedures in compilers. Our core compon...
Automatic type inference is a popular feature of functional programming languages. If a program cann...
Static type systems are a powerful tool for reasoning about the safety of programs. Global type infe...
Many different approaches to type error debugging were developed independently. In this paper, we d...