LISP and Symbolic Computation, 8(4)357-397

An Interpretation of Typed OOP in a Languagewith State

Jonathan Eifrig, Department of Computer Science, The Johns Hopkins University
Scott Smith, Department of Computer Science, The Johns Hopkins University
Valery Trifonov, Department of Computer Science, The Johns Hopkins University
Amy Zwarico, Department of Computer Science, The Johns Hopkins University

Abstract: In this paper we give semantics to LOOP, an expressive typed object-oriented programming language with updatable instance variables. LOOP has a rich type system that allows for the typing of methods operating over an open-ended "self" type. We prove the type system given is sound; i.e., well-typed programs do not experience "message not understood" errors. The semantics of LOOP is given by a translation into a state-based language, SOOP, that contains reference cells, records, and a form of F-bounded polymorphic type.

Keywords: object-oriented programming, type systems, state in programming

This article is not available online.
[picture of journal cover]

May 2003 - hosc@brics.dk