Access the full text.
Sign up today, get DeepDyve free for 14 days.
Explaining Type Errors In Polymorphic Languages MIKE BEAVEN Purdue University and RYAN STANSIFER University of North Texas Strongly-typed languages present programmers with compile-time feedback about the type correctness of programs. Errors during polymorphic type checking take the form of a unification failure for two types. Finding the source of the type error in the code is often difficult because the error may occur far from the spot where the inconsistency is detected. As functional languages use more and more complex type systems, the difficulty of interpreting and locating these errors will increase, To locate the source of type errors the programmer must unravel the long chain of deductions and type instantiation made during type reconstruction. This paper describes an approach that maintains the deductive steps of type inference and the reasons for type instantiation. The approach could be used in an interactive system to guide the programmer to the source of a type error or to explain why the compiler assigned a particular type to an expression. Engineering]: Programming EnvironCategories and Subject Descriptors: D.2.6 [Software Languages]: Language Constructs and Features data types and ments: D.3.3 [Programming structures: F.3.3 [Logics and Meanings of Programs]: Studies of Program Constructed type
ACM Letters on Programming Languages and Systems (LOPLAS) – Association for Computing Machinery
Published: Mar 1, 1993
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.