A Virtual Class Calculus

DAIMI Report Series

View Publication Info
Field Value
Title A Virtual Class Calculus
Creator Ernst, Erik
Ostermann, Klaus
Cook, William
Description Virtual classes are class-valued attributes of objects.Like virtual methods, virtual classes are defined inan object’s class and may be redefined within subclasses.They resemble inner classes, which are alsodefined within a class, but virtual classes are accessedthrough object instances, not as static componentsof a class. When used as types, virtual classes dependupon object identity – each object instance introducesa new family of virtual class types. Virtual classes support large-scale program composition techniques,including higher-order hierarchies and familypolymorphism. The original definition of virtualclasses in Beta left open the question of static typesafety, since some type errors were not caught untilruntime. Later the languages Caesar and gbeta haveused a more strict static analysis in order to ensurestatic type safety. However, the existence of a sound,statically typed model for virtual classes has been along-standing open question. This technical reportpresents a virtual class calculus, vc, that capturesthe essence of virtual classes in these full-fledged programming languages. The key contributions of thepaper are a formalization of the dynamic and staticsemantics of vc and a proof of the soundness of vc.Categories: D.3.3 [Language Constructs and Features]:Classes and objects, inheritance, polymorphism.F.3.3 [Studies of Program Constructs]:Object-oriented constructs, type structure. F.3.2[Semantics of Programming Languages]: Operationalsemantics.
Publisher Aarhus University
Date 2005-01-01
Type info:eu-repo/semantics/article
Peer-reviewed Article
Format application/pdf
Identifier http://ojs.statsbiblioteket.dk/index.php/daimipb/article/view/7225
Source DAIMI Report Series; No 577 (2005): PB-577 A Virtual Class Calculus
DAIMI Report Series; No 577 (2005): PB-577 A Virtual Class Calculus
Language eng
Relation http://ojs.statsbiblioteket.dk/index.php/daimipb/article/view/7225/6165

Contact Us

The PKP Index is an initiative of the Public Knowledge Project.

For PKP Publishing Services please use the PKP|PS contact form.

For support with PKP software we encourage users to consult our wiki for documentation and search our support forums.

For any other correspondence feel free to contact us using the PKP contact form.

Find Us


Copyright © 2015-2018 Simon Fraser University Library