A formal actor-based model for streaming the future

Keyvan Azadbakht (Corresponding author), Frank S. de Boer, Nikolaos Bezirgiannis, Erik de Vink

Research output: Contribution to journalArticleAcademicpeer-review

Abstract

Asynchronous Actor-based programming has gained increasing attention as a model of concurrency and distribution. The Abstract Behavioral Specification (ABS) language is an actor-based programming language that has been developed for both the modeling and formal analysis of distributed systems. In ABS, actors are modeled as concurrent objects that communicate by asynchronous method calls. Return values are also communicated asynchronously via return statements and so-called futures. Many modern distributed software applications require a form of continuous interaction between their components which consists of streaming data from a server to its clients. In this paper, we extend the ABS language in order to support the streaming of data. We introduce the notion of “future-based data streams” by augmenting the syntax, type system, and operational semantics of ABS. As a proof of concept, we further discuss a prototype implementation for supporting future-based data streams on top of ABS, and discuss the impact of the use of these data streams in ABS on the performance in the implementation of a distributed application for the generation of social networks.

Original languageEnglish
Article number102341
Number of pages22
JournalScience of Computer Programming
Volume186
DOIs
Publication statusPublished - 1 Feb 2020

    Fingerprint

Keywords

  • Active objects
  • Cooperative scheduling
  • Future
  • Social networks
  • Streaming

Cite this