File(s) under permanent embargo
Class-based versus object-based: a denotational comparison
In object-oriented programming one distinguishes two kinds of languages. Class-based languages are centered around the concept of classes as descriptions of objects. In object-based languages the concept of a class is substituted by constructs for the creation of individual objects. Usually, the object-based languages attract interest because of their "simplicity". This paper contains a thorough denotational analysis which reveals that simplicity is quickly lost if one tackles verification issues. This is due to what is sometimes called "recursion through the store". By providing a denotational semantics for a simple class-based and a simple object-based language it is shown that the denotational semantics of the object-based language needs much more advanced domain theoretic machinery than the class based one. The gap becomes even wider when we define concepts of specification and appropriate verification rules.
History
Publication status
- Published
Journal
AMAST '02: Proceedings of the 9th International Conference on Algebraic Methodology and Software TechnologyPublisher
Springer-VerlagExternal DOI
Volume
2422Page range
45-88Pages
503.0Book title
Algebraic Methodology and Software Technology: Proceedings of the 9th International Conference, AMAST 2002, Saint-Gilles-les- Bains, Reunion Island, FrancePlace of publication
London, UK.ISBN
3540441441Series
Lecture Notes in Computer ScienceDepartment affiliated with
- Informatics Publications
Full text available
- No
Peer reviewed?
- Yes