Publication | Open Access
A constraint system for a SML type error slicer
15
Citations
19
References
2010
Year
Existing compilers for many languages have confusing type error messages.Type error slicing (TES) helps the programmer by isolating the part of a program contributing to a type error, but unfortunately TES was initially done for a tiny toy language.Extending TES to a full programming language is extremely challenging, and for SML we needed a number of innovations and generalisations.Some issues would be faced for any language, and some are SMLspecific but representative of the complexity of language-specific issues likely to be faced for other languages.We solve both kinds of issues and present a simple, general constraint system for providing type error slices for ill-typed programs.Our constraint system elegantly and efficiently handles features like the intricate open SML feature.We show how the simple clarity of type error slices can demystify language features known to confuse users.We also provide in an appendix a case study on how to use our TES to help modifying user data types, and extend the core language presented in the main body of this report to handle more of the implementation of our system.These extensions allow handling local declarations, type declarations and some uses of signatures.
| Year | Citations | |
|---|---|---|
Page 1
Page 1