Software engineers need to understand programs in order to effectively maintain them. The call graph, which presents the calling relationships between functions, is a useful repre...
Functional logic overloading is a novel approach to userdefined overloading that extends Haskell's concept of type classes in significant ways. Whereas type classes are conce...
Matthias Neubauer, Peter Thiemann, Martin Gasbichl...
d by recent research in abstract model checking, we present a new approach to inferring dependent types. Unlike many of the existing approaches, our approach does not rely on prog...
Abstract. Two of the most prominent features of ML are its expressive module system and its support for Damas-Milner type inference. However, while the foundations of both these fe...
We give a framework for denotational semantics for the polymorphic “core” of the programming language ML. This framework requires no more semantic material than what is needed...