Common record systems only provide access to individual record fields. However, it is often useful to have generic record combinators, that is, functions that work with complete ...
We design and study νObj, a calculus and dependent type system for objects and classes which can have types as members. Type can be aliases, abstract types, or new types. The type...
This paper introduces a pattern for almost compositional functions over recursive data types, and over families of mutually recursive data types. Here "almost compositional&q...
Tribal Ownership unifies class nesting and object ownership. Tribal Ownership is based on Tribe, a language with nested classes and object families. In Tribal Ownership, a progra...
Virtual classes are class-valued attributes of objects. Like virtual methods, virtual classes are defined in an object's class and may be redefined within subclasses. They re...