Composable Actor Behaviour - Distributed Applications and Interoperable Systems Access content directly
Conference Papers Year : 2019

Composable Actor Behaviour

Sam van den Vonder
  • Function : Author
  • PersonId : 1056237
Joeri de Koster
  • Function : Author
  • PersonId : 1056238
Wolfgang de Meuter
  • Function : Author
  • PersonId : 1056239


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.
Fichier principal
Vignette du fichier
485766_1_En_4_Chapter.pdf (441.34 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-02319570 , version 1 (18-10-2019)





Sam van den Vonder, Joeri de Koster, Wolfgang de Meuter. Composable Actor Behaviour. 19th IFIP International Conference on Distributed Applications and Interoperable Systems (DAIS), Jun 2019, Kongens Lyngby, Denmark. pp.57-73, ⟨10.1007/978-3-030-22496-7_4⟩. ⟨hal-02319570⟩
57 View
36 Download



Gmail Facebook X LinkedIn More