Synchronous Message-Passing with Priority
In this paper we introduce a tiered-priority mechanism for a synchronous message-passing language with support for selective communication and first-class communication protocols. Crucially our mechanism allows higher priority threads to communicate with lower priority threads, providing the ability to express programs that would be rejected by classic priority mechanisms that disallow any (potentially) blocking interactions between threads of differing priorities. We provide a prototype implementation of our tiered-priority mechanism capable of expressing Concurrent ML and built in the MLton SML compiler and runtime. We evaluate the viability of our implementation by implementing a safe and predictable shutdown mechanisms in the Swerve webserver and eXene windowing toolkit. Our experiments show that priority can be easily added to existing CML programs without degrading performance. Our system exhibits negligible overheads on more modest workloads.
Tue 19 JanDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
18:00 - 19:30
|Synchronous Message-Passing with Priority|
|Putting gradual types to work|
|Psamathe: A DSL with Flows for Safe Blockchain Assets (extended abstract)|
Reed Oei University of Illinois at Urbana-Champaign, Michael Coblenz University of Maryland at College Park, Jonathan Aldrich Carnegie Mellon UniversityFile Attached