Abstract. Datatypes which differ inessentially in their names and structure are said to be isomorphic; for example, a ternary product is isomorphic to a nested pair of binary prod...
By determining, statically, where the structure of a program requires sets of variables to share a common tation, we can identify abstract data types, detect ion violations, find ...
Interface-based programming, i.e. the systematic use of interface types in variable declarations, serves the decoupling of classes and increases a program’s changeability. To ma...
A database programming language is a programming language extended with database operations. In this paper we extend a core functional language with explicitly labeled tuples and ...
To improve the quality of type error messages in functional programming languages, we propose four techniques which influence the behaviour of constraint-based type inference proc...
Bastiaan Heeren, Jurriaan Hage, S. Doaitse Swierst...