Objects and classes, coalgebraically
The coalgebraic perspective on objects and classes in object-oriented programming is elaborated: objects consist of a (unique) identifier, a local state, and a collection of methods described as a coalgebra; classes are coalgebraic (behavioural) specifications of objects. The creation of a ``new'' object of a class is described in terms of the terminal coalgebra satisfying the specification. We present a notion of ``totally specified'' class, which leads to particularly simple terminal coalgebras. We further describe local and global operational semantics for objects. Associated with the local operational semantics is a notion of bisimulation (for objects belonging to the same class), expressing observational indistinguishability.
|Object-oriented Programming (acm D.1.5), Requirements/Specifications (acm D.2.1), DATA STRUCTURES (acm E.1), Models of Computation (acm F.1.1), General (acm F.3.0)|
|Theories (e.g. algebraic theories), structure, and semantics (msc 18C10), Categorical logic, topoi (msc 03G30)|
|Department of Computer Science [CS]|
Jacobs, B.P.F. (1995). Objects and classes, coalgebraically. Department of Computer Science [CS]. CWI.