Type error slicing in implicitly typed higher-order languages

https://doi.org/10.1016/j.scico.2004.01.004Get rights and content
Under an Elsevier user license
open archive

Abstract

Previous methods have generally identified the location of a type error as a particular program point or the program subtree rooted at that point. We present a new approach that identifies the location of a type error as a set of program points (a slice) all of which are necessary for the type error. We identify the criteria of completeness and minimality for type error slices. We discuss the advantages of complete and minimal type error slices over previous methods of presenting type errors. We present and prove the correctness of algorithms for finding complete and minimal type error slices for implicitly typed higher-order languages like Standard ML.

Keywords

Type error location
Type inference
Intersection types

Cited by (0)

This work was partially supported by EPSRC grant GR/R 41545/01, EC FP5 grant IST-2001-33477, NATO grant CRG 971607, NSF grants CCR 9988529 and ITR 0113193, and Sun Microsystems equipment grant EDUD-7826-990410-US.