: The Krivine machine is a simple and natural implementation of the normal weak-head reduction strategy for pure λ-terms. While its original description has remained unpublished, ...
The Java language incurs a runtime overhead for exception checks and object accesses without an interior pointer in order to ensure safety. It also requires type inclusion test, d...
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...
Eight years ago, functional dependencies, a concept from the theory of relational databases, were proposed as a mechanism for avoiding common problems with multiple parameter type...
Ownership types provide a statically enforceable way of specifying object encapsulation and enable local reasoning about program correctness in object-oriented languages. However,...
Chandrasekhar Boyapati, Barbara Liskov, Liuba Shri...