English
Related papers

Related papers: Accompanist: A Runtime for Resilient Choreographic…

200 papers

Choreographic models support a correctness-by-construction principle in distributed programming. Also, they enable the automatic generation of correct message-based communication patterns from a global specification of the desired system…

Programming Languages · Computer Science 2022-05-16 Lorenzo Gheri , Ivan Lanese , Neil Sayers , Emilio Tuosto , Nobuko Yoshida

Orchestrating centralised service-oriented workflows presents significant scalability challenges that include: the consumption of network bandwidth, degradation of performance, and single points of failure. This paper presents a high-level…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-11-11 Ward Jaradat , Alan Dearle , Adam Barker

Runtime verification has gained popularity as a lightweight approach for increasing assurance in systems under scrutiny. Performing runtime checks enables dynamic monitoring and alerts for unexpected behavior, thereby improving reliability…

Software Engineering · Computer Science 2026-03-19 Vladyslav Mikytiv , Bernardo Toninho , Carla Ferreira

The runtime analysis of decentralised software requires instrumentation methods that are scalable, but also minimally invasive. This paper presents a new algorithm that instruments choreographed outline monitors. Our instrumentation…

Software Engineering · Computer Science 2021-04-20 Luca Aceto , Duncan Paul Attard , Adrian Francalanza , Anna Ingólfsdóttir

This paper introduces the ACCompanion, an expressive accompaniment system. Similarly to a musician who accompanies a soloist playing a given musical piece, our system can produce a human-like rendition of the accompaniment part that follows…

We present Cho-Reo-graphies (CR), a new language model that unites two powerful programming paradigms for concurrent software based on communicating processes: Choreographic Programming and Exogenous Coordination. In CR, programmers specify…

Programming Languages · Computer Science 2018-04-25 Farhad Arbab , Luís Cruz-Filipe , Sung-Shik Jongmans , Fabrizio Montesi

Session types provide a typing discipline for message-passing systems. However, most session type approaches assume an ideal world: one in which everything is reliable and without failures. Yet this is in stark contrast with distributed…

Programming Languages · Computer Science 2023-05-16 Adam D. Barwell , Ping Hou , Nobuko Yoshida , Fangyi Zhou

Choreographic programming (CP) is a paradigm for implementing distributed systems that uses a single global program to define the actions and interactions of all participants. Library-level CP implementations, like HasChor, integrate well…

Programming Languages · Computer Science 2025-04-25 Mako Bates , Shun Kashiwa , Syed Jafri , Gan Shen , Lindsey Kuper , Joseph P. Near

In this paper, we introduce Choreographer, a simulation framework that enables a holistic system-level evaluation of fine-grained accelerators designed for latency-sensitive tasks. Unlike existing frameworks, Choreographer captures all…

Hardware Architecture · Computer Science 2025-11-03 Hoa Nguyen , Pongstorn Maidee , Jason Lowe-Power , Alireza Kaviani

Modern enterprise platforms increasingly depend on distributed microservices, analytical data platforms, and external APIs to construct composite responses for applications. Orchestrating data retrieval across these heterogeneous systems is…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-03-11 Abhiram Kandiraju

Traditional concurrent-programming techniques require programmers to painstakingly write programs for each participant in a concurrent system. Choreographic programming, in contrast, allows a programmer to write one centralized program and…

Programming Languages · Computer Science 2026-05-25 Ashley Samuelson , Andrew K. Hirsch , Ethan Cecchetti

We survey our work on choreographies and behavioural contracts in multiparty interactions. In particular theories of behavioural contracts are presented which enable reasoning about correct service composition (contract compliance) and…

Logic in Computer Science · Computer Science 2014-11-17 Mario Bravetti , Gianluigi Zavattaro

Modern applications often operate on data in multiple administrative domains. In this federated setting, participants may not fully trust each other. These distributed applications use transactions as a core mechanism for ensuring…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-08-23 Isaac Sheff , Tom Magrino , Jed Liu , Andrew C. Myers , Robbert van Renesse

Choreographic programming is a concurrent paradigm in which a single global program called a choreography describes behavior across an entire distributed network of participants. Choreographies are easier to reason about than separate…

Programming Languages · Computer Science 2024-06-21 Mako Bates , Syed Jafri , Joseph P. Near

Rollback recovery strategies are well-known in concurrent and distributed systems. In this context, recovering from unexpected failures is even more relevant given the non-deterministic nature of execution, which means that it is…

Programming Languages · Computer Science 2024-01-08 Germán Vidal

The concept of the federated Cloud-Edge-IoT continuum promises to alleviate many woes of current systems, improving resource use, energy efficiency, quality of service, and more. However, this continuum is still far from being realized in…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-08-08 Piotr Sowinski , Ignacio Lacalle , Rafael Vano , Carlos E. Palau

This work-in-progress paper reports on our efforts to improve different aspects of coordination in complex, component-based robotic systems. Coordination is a system level aspect concerned with commanding, configuring and monitoring…

Robotics · Computer Science 2013-03-04 Markus Klotzbücher , Geoffrey Biggs , Herman Bruyninckx

Service-oriented workflows are typically executed using a centralised orchestration approach that presents significant scalability challenges. These challenges include the consumption of network bandwidth, degradation of performance, and…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-11-11 Ward Jaradat , Alan Dearle , Adam Barker

Tool invocation is a core capability of agentic systems, yet failures often arise not from individual tool calls but from how multiple tools are organized and executed together. Existing approaches tightly couple tool execution with…

Artificial Intelligence · Computer Science 2026-03-02 Tao Zhe , Haoyu Wang , Bo Luo , Min Wu , Wei Fan , Xiao Luo , Zijun Yao , Haifeng Chen , Dongjie Wang

Stream processing applications are deployed as continuous queries that run from the time of their submission until their cancellation. This deployment mode limits developers who need their applications to perform runtime adaptation, such as…

Databases · Computer Science 2012-08-22 Gabriela Jacques-Silva , Buğra Gedik , Rohit Wagle , Kun-Lung Wu , Vibhore Kumar