Type-preserving compilation can improve software reliability by generating code that can be verified independently of the compiler. Practical type-preserving compilation does not ...
Generic classes can be used to improve performance by allowing compile-time polymorphism. But the applicability of compile-time polymorphism is narrower than that of runtime polym...
Dan Tsafrir, Robert W. Wisniewski, David F. Bacon,...
Object-oriented programming techniques support construction of reusable and extensible code. However, class-based languages have poor support for implementing type-orthogonal beha...
We present MJ: a language for specifying general classes whose members are produced by iterating over members of other classes. We call this technique “class morphing” or just ...
Beginning with BETA, a range of programming language mechanisms such as virtual classes (class-valued attributes of objects) have been developed to allow inheritance in the presen...
Dave Clarke, Sophia Drossopoulou, James Noble, Tob...