Documents

DOI

Code reusability is the cornerstone of object-oriented programming. Reuse mechanisms such as inheritance and trait composition lay at the basis of a whole range of software engineering practices with the goal to improve software quality and reliability. In this paper we investigate code reuse mechanisms for actors, and find that it is currently difficult to specify the behaviour of an actor out of reusable parts. We discuss different kinds of code reuse mechanisms in different kinds of actor model, and we motivate why these mechanisms are currently unsatisfactory. As a possible solution we define a new reuse mechanism based on delegation-based trait composition. In a nutshell, the mechanism allows programmers to compose the behaviour of actors, and every time a compound behaviour is spawned into an actor, it will cause multiple actors to be spawned (one for each independent behaviour). Some messages will be automatically delegated to the actor that implements the desired functionality. We provide an implementation of this model in a prototype Active Object language called Stella, and we formalise a subset of Stella using a small-step operational semantics to unambiguously define the different steps involved in our reuse mechanism.
Original languageEnglish
Title of host publicationLecture Notes in Computer Science
PublisherSpringer Verlag
Volume11534
ISBN (Print)978-3-030-22495-0
DOIs
Publication statusAccepted/In press - 12 Apr 2019
EventIFIP WG 6.1 International Conference on Distributed Applications and Interoperable Systems (DAIS 2019) - Technical University of Denmark, Kongens Lyngby, Denmark
Duration: 17 Jun 201921 Jun 2019
Conference number: 19
https://www.discotec.org/2019/dais

Conference

ConferenceIFIP WG 6.1 International Conference on Distributed Applications and Interoperable Systems (DAIS 2019)
Abbreviated titleDAIS
CountryDenmark
CityKongens Lyngby
Period17/06/1921/06/19
Internet address

    Research areas

  • actors, delegation, active objects, code reusability

ID: 45370423