ARx: Reactive Programming for Synchronous Connectors - Coordination Models and Languages
Conference Papers Year : 2020

ARx: Reactive Programming for Synchronous Connectors

José Proença
  • Function : Author
  • PersonId : 1058383

Abstract

Reactive programming (RP) languages and Synchronous Coordination (SC) languages share the goal of orchestrating the execution of computational tasks, by imposing dependencies on their execution order and controlling how they share data. RP is often implemented as libraries for existing programming languages, lifting operations over values to operations over streams of values, and providing efficient solutions to manage how updates to such streams trigger reactions, i.e., the execution of dependent tasks. SC is often implemented as a standalone formalism to specify existing component-based architectures, used to analyse, verify, transform, or generate code. These two approaches target different audiences, and it is non-trivial to combine the programming style of RP with the expressive power of synchronous languages.This paper proposes a lightweight programming language to describe component-based Architectures for Reactive systems, dubbed ARx, which blends concepts from RP and SC, mainly inspired to the Reo coordination language and its composition operation, and with tailored constructs for reactive programs such as the ones found in ReScala. ARx is enriched with a type system and with algebraic data types, and has a reactive semantics inspired in RP. We provide typical examples from both the RP and SC literature, illustrate how these can be captured by the proposed language, and describe a web-based prototype tool to edit, parse, and type check programs, and to animate their semantics.
Fichier principal
Vignette du fichier
495623_1_En_3_Chapter.pdf (859.92 Ko) Télécharger le fichier
Origin Files produced by the author(s)

Dates and versions

hal-03274003 , version 1 (29-06-2021)

Licence

Identifiers

Cite

José Proença, Guillermina Cledou. ARx: Reactive Programming for Synchronous Connectors. 22th International Conference on Coordination Languages and Models (COORDINATION), Jun 2020, Valletta, Malta. pp.39-56, ⟨10.1007/978-3-030-50029-0_3⟩. ⟨hal-03274003⟩
63 View
23 Download

Altmetric

Share

More