Sound and Relaxed Behavioural Inheritance

Nuno Amalio

    Research output: Chapter in Book/Report/Conference proceedingChapter

    Abstract

    Object-oriented (OO) inheritance establishes taxonomies of OO classes. Behavioural inheritance (BI), a strong version, emphasises substitutability: objects of child classes replace objects of their ascendant classes without any observable effect difference on the system. BI is related to data refinement, but refinement's constrictions rule out many useful OO subclassings. This paper revisits BI at the light of Z and the theory of data refinement. It studies existing solutions to this problem, criticises them, and proposes improved relaxations. The results are applicable to any OO language that supports design-by-contract (DbC). The paper's contributions include three novel BI relaxations supported by a mathematical model with proofs carried out in the Isabelle proof assistant, and an examination of BI in the DbC languages Eiffel, JML and Spec#.
    Original languageEnglish
    Title of host publicationFrom Astrophysics to Unconventional Computation: Essays Presented to Susan Stepney on the Occasion of her 60th Birthday
    EditorsAndrew Adamatzky, Vivien Kendon
    Place of PublicationSwitzerland
    PublisherSpringer
    Pages255-298
    Number of pages44
    ISBN (Print)2194-7287
    DOIs
    Publication statusPublished (VoR) - 2019

    Publication series

    NameEmergence, Complexity and Computation

    Fingerprint

    Dive into the research topics of 'Sound and Relaxed Behavioural Inheritance'. Together they form a unique fingerprint.

    Cite this