ICFP 2024
Mon 2 - Sat 7 September 2024 Milan, Italy
Thu 5 Sep 2024 15:48 - 16:06 at Green 1-2-3 - Distributed Systems, Concurrency Chair(s): Michael Sperber

Actor languages model concurrency as processes that communicate through asynchronous message sends. Unfortunately, as the complexity of these systems increases, it becomes more difficult to compose and integrate their components. This is because of assumptions made by components about their communication partners which may not be upheld when they remain implicit. In this paper, we bring design-by-contract programming to actor programs through a contract system that enables expressing constraints on receiver-related properties. Expressing properties about the expected receiver of a message, and about this receiver’s communication behavior, requires two novel types of contracts. Through their recursive structure, these contracts can govern entire communication chains. We implement the contract system for an actor extension of Scheme, describe it formally, and show how to assign blame in case of a contract violation. Finally, we prove our contract system and its blame assignment correct by formulating and proving a blame correctness theorem.

Thu 5 Sep

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

15:30 - 17:00
Distributed Systems, ConcurrencyICFP Papers and Events / JFP First Papers at Green 1-2-3
Chair(s): Michael Sperber Active Group GmbH
15:30
18m
Talk
The Functional, the Imperative, and the Sudoku: Getting Good, Bad, and Ugly to Get Along (Functional Pearl)Functional Pearl
ICFP Papers and Events
Manuel Serrano Inria; Université Côte d’Azur, Robert Bruce Findler Northwestern University
DOI
15:48
18m
Talk
Blame-Correct Support for Receiver Properties in Recursively-Structured Actor Contracts
ICFP Papers and Events
Bram Vandenbogaerde Vrije Universiteit Brussel, Quentin Stiévenart Université du Québec à Montréal, Coen De Roover Vrije Universiteit Brussel
DOI Pre-print
16:06
18m
Talk
A Coq Mechanization of JavaScript Regular Expression Semantics
ICFP Papers and Events
Link to publication DOI Pre-print
16:24
18m
Talk
Alice or Bob?: Process polymorphism in choreographiesJFP First Paper
JFP First Papers
Eva Graversen University of Southern Denmark, Andrew K. Hirsch University at Buffalo, SUNY, Fabrizio Montesi University of Southern Denmark
DOI
16:42
18m
Talk
Functional Programming in Financial Markets (Experience Report)Experience Report
ICFP Papers and Events
Atze Dijkstra Standard Chartered Bank, José Pedro Magalhães Standard Chartered Bank, Pierre Néron Standard Chartered Bank
DOI Pre-print