Asynchronous Functional Sessions: Cyclic and Concurrent (Extended Version)

08/16/2022
by   Bas van den Heuvel, et al.
0

We present Concurrent GV (CGV), a functional calculus with message-passing concurrency governed by session types. With respect to prior calculi, CGV has increased support for concurrent evaluation and for cyclic network topologies. The design of CGV draws on APCP, a session-typed asynchronous pi-calculus developed in prior work. Technical contributions are (i) the syntax, semantics, and type system of CGV; (ii) a correct translation of CGV into APCP; (iii) a technique for establishing deadlock-free CGV programs, by resorting to APCP's priority-based type system.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/06/2022

Asynchronous Functional Sessions: Cyclic and Concurrent

We present Concurrent GV (CGV), a functional calculus with message-passi...
research
08/08/2019

Intrinsically-Typed Mechanized Semantics for Session Types

Session types have emerged as a powerful paradigm for structuring commun...
research
11/25/2021

Deadlock Freedom for Asynchronous and Cyclic Process Networks (Extended Version)

This paper considers the challenging problem of establishing deadlock fr...
research
10/05/2018

Realisability of Pomsets via Communicating Automata

Pomsets are a model of concurrent computations introduced by Pratt. They...
research
10/28/2020

Actris 2.0: Asynchronous Session-Type Based Reasoning in Separation Logic

Message passing is a useful abstraction for implementing concurrent prog...
research
12/02/2021

Types and Terms Translated: Unrestricted Resources in Encoding Functions as Processes (Extended Version)

Type-preserving translations are effective rigorous tools in the study o...
research
08/31/2020

Correctly Implementing Synchronous Message Passing in the Pi-Calculus By Concurrent Haskell's MVars

Comparison of concurrent programming languages and correctness of progra...

Please sign up or login with your details

Forgot password? Click here to reset