2024/06/13 by Giuseppe De Palma, Saverio Giallorenzo, De Palma, Giuseppe +7
Computer Science · Engineering · #Distributed #FOS: Computer and information sciences #Graph Theory and Algorithms #Music Technology and Sound Studies #Parallel #Programming Languages (cs.PL) #Slime Mold and Myxomycetes Research #and Cluster Computing (cs.DC)
paper · pdf · doi:10.48550/arxiv.2406.09099
openalex publication_date 2024/06/13 · openalex created_date 2024/06/15 · openalex updated_date 2026/07/28
Choreographic Programming (CP) is a language paradigm whereby software artefacts, called choreographies, specify the behaviour of communicating participants. CP is famous for its correctness-by-construction approach to the development of concurrent, distributed systems. In this paper, we illustrate FaaSChal, a proposal for a CP language tailored for the case of serverless Function-as-a-Service (FaaS). In FaaS, developers define a distributed architecture as a collection of stateless functions, leaving to the serverless platform the management of deployment and scaling. We provide a first account of a CP language tailored for the FaaS case via examples that present some of its relevant features, including projection. In addition, we showcase a novel application of CP. We use the choreography as a source to extract information on the infrastructural relations among functions so that we can synthesise policies that strive to minimise their latency while guaranteeing the respect of user-defined constraints.