kirancodes.me
To Proof Maintenance & Beyond!

The recursive record semantics of objects revisited

Gérard Boudol

Abstract

In a call-by-value language, representing objects as recursive records requires using an unsafe fixpoint. We design, for a core language including extensible records, a type system which rules out unsafe recursion and still supports the construction of a principal type for each typable term. We illustrate the expressive power of this language with respect to object-oriented programming by introducing a sub-language for “mixin-based” programming.

Related papers