Chocola: Integrating Futures, Actors, and Transactions

Onderzoeksoutput: Meeting abstract (Book)

43 Downloads (Pure)

Samenvatting

Developers often combine different concurrency models in a single program, in each part of the program using the model that fits best. Many programming languages, such as Clojure, Scala, and Haskell, cater to this need by supporting different concurrency models. However, they are often combined in an ad hoc way and the semantics of the combination is not always well defined.

This paper studies the combination of three concurrency models: futures, actors, and transactions. We show that a naive combination of these models invalidates the guarantees they normally provide, thereby breaking the assumptions of developers. Hence, we present Chocola: a unified framework of futures, actors, and transactions that maintains the guarantees of all models wherever possible, even when they are combined. We present the semantics of this model and its implementation in Clojure, and have evaluated its performance and expressivity using three benchmark applications.
Originele taal-2English
TitelAGERE 2018 - Proceedings of the 8th ACM SIGPLAN International Workshop on Programming Based on Actors, Agents, and Decentralized Control, co-located with SPLASH 2018
RedacteurenFederico Bergenti, Joeri De Koster, Juliana Franco
UitgeverijACM
Pagina's33-43
Aantal pagina's11
ISBN van elektronische versie9781450360661
ISBN van geprinte versie9781450360661
DOI's
StatusPublished - 5 nov. 2018
Evenement8th ACM SIGPLAN International Workshop on Programming Based on Actors, Agents, and Decentralized Control - Boston, United States
Duur: 5 nov. 20185 nov. 2018

Workshop

Workshop8th ACM SIGPLAN International Workshop on Programming Based on Actors, Agents, and Decentralized Control
Verkorte titelAGERE'18
Land/RegioUnited States
StadBoston
Periode5/11/185/11/18

Vingerafdruk

Duik in de onderzoeksthema's van 'Chocola: Integrating Futures, Actors, and Transactions'. Samen vormen ze een unieke vingerafdruk.

Citeer dit