International audienceChoreographic programming is a programming-language design approach that drives error-safe protocol development in distributed systems. Motivated by challenging scenarios in Cyber-Physical Systems (CPS), we study how choreographic programming can cater for dynamic infrastructures where the availability of components may change at runtime. We introduce the Global Quality Calculus ($$GC_q$$), a process calculus featuring novel operators for multiparty, partial and collective communications; we provide a type discipline that controls how partial communications refer only to available components; and we show that well-typed choreographies enjoy progress
Distributed programs are hard to get right because they are required to be open, scalable, long-runn...
We introduce a theory for generatively communicating concurrent processes. Generative communication ...
Global computing (WAN programming, Internet programming) distinguishes itself from local computing (...
Ubiquitous connectivity of web, mobile, and IoT computing platforms has fostered a variety of distri...
Choreographic models support a correctness-by-construction principle in distributed programming. Als...
Choreographic models support a correctness-by-construction principle in distributed programming. Als...
We introduce a meta-model based on formal languages, dubbed formalchoreographic languages, to study ...
AbstractThis paper proposes a calculus for describing communication-centred programs and discusses i...
Programming distributed applications free from communication deadlocks and race conditions is comple...
International audienceChoreographic Programming is a paradigm for distributed programming, where hig...
Choreographic models support a correctness-by-construction principle in distributed programming. Als...
We explore logical reasoning for the global calculus, a coordination model based on the notion of ch...
In the paper "Functional programming for distributed systems with XC" we present XC, a programming l...
Choreographic programming is a paradigm where developers write the global specification (called chor...
International audienceOver the last decade, global descriptions have been successfully employed for ...
Distributed programs are hard to get right because they are required to be open, scalable, long-runn...
We introduce a theory for generatively communicating concurrent processes. Generative communication ...
Global computing (WAN programming, Internet programming) distinguishes itself from local computing (...
Ubiquitous connectivity of web, mobile, and IoT computing platforms has fostered a variety of distri...
Choreographic models support a correctness-by-construction principle in distributed programming. Als...
Choreographic models support a correctness-by-construction principle in distributed programming. Als...
We introduce a meta-model based on formal languages, dubbed formalchoreographic languages, to study ...
AbstractThis paper proposes a calculus for describing communication-centred programs and discusses i...
Programming distributed applications free from communication deadlocks and race conditions is comple...
International audienceChoreographic Programming is a paradigm for distributed programming, where hig...
Choreographic models support a correctness-by-construction principle in distributed programming. Als...
We explore logical reasoning for the global calculus, a coordination model based on the notion of ch...
In the paper "Functional programming for distributed systems with XC" we present XC, a programming l...
Choreographic programming is a paradigm where developers write the global specification (called chor...
International audienceOver the last decade, global descriptions have been successfully employed for ...
Distributed programs are hard to get right because they are required to be open, scalable, long-runn...
We introduce a theory for generatively communicating concurrent processes. Generative communication ...
Global computing (WAN programming, Internet programming) distinguishes itself from local computing (...