Programming and reasoning about actors that share state

被引:0
作者
Caldwell, Sam [1 ]
Garnock-jones, Tony [2 ]
Felleisen, Matthias [1 ]
机构
[1] Northeastern Univ, Boston, MA 02115 USA
[2] Maastricht Univ, Maastricht, Netherlands
关键词
LANGUAGE; MODEL; COORDINATION; CONGOLOG; CALCULUS;
D O I
10.1017/S0956796824000091
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Actor languages realize concurrency via message passing, which most of the time is easy to use. Empirical code inspection provides evidence, however, that on occasion, programmers wish to have an actor share some of its state with others. The dataspace model adds a tightly controlled state- exchange mechanism, dubbed dataspace, to the actor model for just this purpose. Experience with dataspaces suggests that this form of sharing calls for linguistic constructs that allow programmers to state temporal aspects of actor conversations. In response, this paper presents the facet notation: its theory, its type system, its behavioral type system, and some first experiences with an implementation.
引用
收藏
页数:69
相关论文
共 74 条
[1]  
Agha G., 1986, Actors: a Model of Concurrent Computation in Distributed Systems
[2]  
Akka. Project, 2022, Akka actors
[3]  
Armstrong Joe L., 2003, Making Reliable Distributed Systems in the Presence of Software Errors
[4]  
Avila H. R., 2020, Art Sci. Eng. Program, V5
[5]   THE ESTEREL SYNCHRONOUS PROGRAMMING LANGUAGE - DESIGN, SEMANTICS, IMPLEMENTATION [J].
BERRY, G ;
GONTHIER, G .
SCIENCE OF COMPUTER PROGRAMMING, 1992, 19 (02) :87-152
[6]   Programming mobile context-aware applications with TOTAM [J].
Boix, Elisa Gonzalez ;
Scholliers, Christophe ;
De Meuter, Wolfgang ;
D'Hondt, Theo .
JOURNAL OF SYSTEMS AND SOFTWARE, 2014, 92 :3-19
[7]  
Caires L, 2009, LECT NOTES COMPUT SC, V5502, P285, DOI 10.1007/978-3-642-00590-9_21
[8]  
Caldwell S., 2023, Reasoning About Actors that Share State
[9]   Typed dataspace actors [J].
Caldwell, Sam ;
Garnock-Jones, Tony ;
Felleisen, Matthias .
JOURNAL OF FUNCTIONAL PROGRAMMING, 2020, 30
[10]   Deadlock-freedom-by-design: Multiparty Asynchronous Global Programming [J].
Carbone, Marco ;
Montesi, Fabrizio .
ACM SIGPLAN NOTICES, 2013, 48 (01) :263-274