Projecten per jaar
Samenvatting
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.
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.
Originele taal-2 | English |
---|---|
Titel | Proceedings of the ACM on Programming Languages |
Uitgeverij | ACM |
Pagina's | 515-543 |
Aantal pagina's | 29 |
Volume | 8 |
Uitgave | ICFP |
DOI's | |
Status | Published - 15 aug 2024 |
Evenement | 29th ACM SIGPLAN International Conference on Functional Programming - Milan, Italy Duur: 2 sep 2024 → 7 sep 2024 https://icfp24.sigplan.org/ |
Publicatie series
Naam | Proceedings of the ACM on Programming Languages |
---|---|
Uitgeverij | ACM |
Nummer | ICFP |
Volume | 8 |
ISSN van geprinte versie | 2475-1421 |
Conference
Conference | 29th ACM SIGPLAN International Conference on Functional Programming |
---|---|
Verkorte titel | ICFP"24 |
Land/Regio | Italy |
Stad | Milan |
Periode | 2/09/24 → 7/09/24 |
Internet adres |
Bibliografische nota
Publisher Copyright:© 2024 Association for Computing Machinery. All rights reserved.
Projecten
- 1 Actief
-
FWOTM1089: Modulaire statische analyse voor de zachte verificatie van contracten in gedistribueerde actor programma's
Vandenbogaerde, B., De Roover, C. & Stiévenart, Q.
1/11/21 → 31/10/25
Project: Fundamenteel
Datasets
-
Replication package for 'Blame-Correct Support for Receiver Properties in Recursively-Structured Actor Contracts'
Vandenbogaerde, B. (Creator), Stiévenart, Q. (Creator) & De Roover, C. (Creator), Zenodo, jun 2024
Dataset
Activiteiten
- 1 Talk or presentation at a conference
-
Blame-Correct Support for Receiver Properties in Recursively-Structured Actor Contracts
Bram Vandenbogaerde (Speaker)
2 sep 2024 → 7 sep 2024Activiteit: Talk or presentation at a conference