Wyber, Brendon J2015-02-162015-02-161999http://hdl.handle.net/10092/10149One of the features of functional languages, such as Haskell and SML, is that the data types of the variables and functions can be inferred from their usage. Unfortunately when an error occurs from this type inference, it may be difficult for a novice programmer to trace the error's source. We introduce two categories of type errors. Explicit type errors are caused by the user attempting to use incompatible types together. Attributed type errors are the result of editing or syntactical mistakes that are not detected until type checking occurs. The programmer requires differing forms of error messages to debug each category of type error more effectively. We present these display systems and determine that to implement them, the type of each sub-expression in the code must be inferred. This can be implemented using an algorithm given by Beaven and Stansifer.enCopyright Brendon J WyberType debugging in functional languagesFields of Research::46 - Information and computing sciences::4612 - Software engineering::461204 - Programming languages