We propose a conservative extension of the polymorphic lambda calculus (A5B ) as an intermediate language for compiling languages with name-based class and interface hierarchies. ...
This paper demonstrates the impact of integrating session types and object-oriented programming, through their implementation in Java. Seses provide high-level abstraction for stru...
Because of the strong coupling of classes and the proliferation of unneeded class members induced by inheritance, the suggestion to use composition and delegation instead has beco...
Abstract. In this paper we present Jam, an extension of the Java language supporting mixins, that is, parametric heir classes. A mixin declaration in Jam is similar to a Java heir ...
We propose a novel approach based on coinductive logic to specify type systems of programming languages. The approach consists in encoding programs in Horn formulas which are inter...