English
Related papers

Related papers: Certifying Choreography Compilation

200 papers

In service-oriented architecture, services coordinate in one of two ways: directly, using point-to-point communication, or indirectly, through an intermediary called the orchestrator. Orchestrators tend to be more popular because their…

Programming Languages · Computer Science 2026-03-24 Viktor Strate Kløvedal , Dan Plyukhin , Marco Peressotti , Fabrizio Montesi

We present PolyChor$\lambda$, a language for higher-order functional \emph{choreographic programming} -- an emerging paradigm by which programmers write the desired cooperative behaviour of a system of communicating processes and then…

Programming Languages · Computer Science 2023-03-09 Eva Graversen , Andrew K. Hirsch , Fabrizio Montesi

Choreographies describe distributed protocols from a global viewpoint, enabling correct-by-construction synthesis of local behaviours. We develop a policy-parametric type system that prevents information leaks from high-security data to…

Programming Languages · Computer Science 2026-02-26 Marco Bertoni , Saverio Giallorenzo , Marco Peressotti

Programming distributed applications free from communication deadlocks and race conditions is complex. Preserving these properties when applications are updated at runtime is even harder. We present a choreographic approach for programming…

Programming Languages · Computer Science 2019-03-14 Mila Dalla Preda , Maurizio Gabbrielli , Saverio Giallorenzo , Ivan Lanese , Jacopo Mauro

Choreography refers to creation of dance steps and motions for dances according to the latent knowledge in human mind, where the created dance motions are in general style-specific and consistent. So far, such latent style-specific…

Multimedia · Computer Science 2021-05-03 Xinjian Zhang , Yi Xu , Su Yang , Longwen Gao , Huyang Sun

The BPMN 2.0 standard is a widely used semi-formal notation to model distributed information systems from different perspectives. The standard makes available a set of diagrams to represent such perspectives. Choreography diagrams represent…

Software Engineering · Computer Science 2023-06-22 Flavio Corradini , Andrea Morichetta , Andrea Polini , Barbara Re , Francesco Tiezzi

Modern service-oriented systems are often built by reusing, and composing together, existing services distributed over the Internet. Service choreography is a possible form of service composition whose goal is to specify the interactions…

Software Engineering · Computer Science 2015-02-13 Marco Autili , Massimo Tivoli

We initiate the development of a model-driven testing framework for message-passing systems. The notion of test for communicating systems cannot simply be borrowed from existing proposals. Therefore, we formalize a notion of suitable…

Formal Languages and Automata Theory · Computer Science 2020-09-18 Alex Coto , Roberto Guanciale , Emilio Tuosto

Functional choreographic programming suggests a new propositions-as-types paradigm might be possible. In this new paradigm, communication is not modeled linearly; instead, ownership of a piece of data is modeled as a modality, and…

Programming Languages · Computer Science 2024-06-04 Andrew K. Hirsch

Theory of choreographic languages typically includes a number of complex results that are proved by structural induction. The high number of cases and the subtle details in some of them lead to long reviewing processes, and occasionally to…

Logic in Computer Science · Computer Science 2021-02-05 Luís Cruz-Filipe , Fabrizio Montesi , Marco Peressotti

Choreographic approaches to message-passing applications can be regarded as an instance of the model-driven development principles. Choreographies specify interactions among distributed participants coordinating among themselves with…

Formal Languages and Automata Theory · Computer Science 2019-09-16 Hao Zeng , Alexander Kurz , Emilio Tuosto

We explore logical reasoning for the global calculus, a coordination model based on the notion of choreography, with the aim to provide a methodology for specification and verification of structured communications. Starting with an…

Programming Languages · Computer Science 2011-10-20 Marco Carbone , Davide Grohmann , Thomas T. Hildebrandt , Hugo A. López

We built Chorex, a language that brings choreographic programming to Elixir as a path toward robust distributed applications. Chorex is unique among choreographic languages because it tolerates failure among actors: when an actor crashes,…

Programming Languages · Computer Science 2025-11-21 Ashton Wiersdorf , Ben Greenman

We survey our results about verification of adaptable processes. We present adaptable processes as a way of overcoming the limitations that process calculi have for describing patterns of dynamic process evolution. Such patterns rely on…

Logic in Computer Science · Computer Science 2015-12-25 Mario Bravetti

To generate dance that temporally and aesthetically matches the music is a challenging problem, as the following factors need to be considered. First, the aesthetic styles and messages conveyed by the motion and music should be consistent.…

Multimedia · Computer Science 2022-07-18 Ho Yin Au , Jie Chen , Junkun Jiang , Yike Guo

We propose a formal model for distributed systems, where each participant advertises its requirements and obligations as behavioural contracts, and where multiparty sessions are started when a set of contracts allows to synthesise a…

Logic in Computer Science · Computer Science 2013-10-18 Julien Lange , Alceste Scalas

We present Pirouette, a language for typed higher-order functional choreographic programming. Pirouette offers programmers the ability to write a centralized functional program and compile it via endpoint projection into programs for each…

Programming Languages · Computer Science 2021-11-10 Andrew K. Hirsch , Deepak Garg

The Future Internet is becoming a reality, providing a large-scale computing environments where a virtually infinite number of available services can be composed so to fit users' needs. Modern service-oriented applications will be more and…

Software Engineering · Computer Science 2015-12-25 Marco Autili , Amleto Di Salle , Alexander Perucci , Massimo Tivoli

We introduce a meta-model based on formal languages, dubbed formal choreographic languages, to study message-passing systems. Our framework allows us to generalise standard constructions from the literature and to compare them. In…

Logic in Computer Science · Computer Science 2024-02-14 Franco Barbanera , Ivan Lanese , Emilio Tuosto

A cryptographic protocol (CP) is a distributed algorithm designed to provide a secure communication in an insecure environment. CPs are used, for example, in electronic payments, electronic voting procedures, database access systems, etc.…

Cryptography and Security · Computer Science 2020-11-25 A. M. Mironov