Design and Implementation of Concurrent C0

Max Willsey
(Carnegie Mellon University)
Rokhini Prabhu
(Carnegie Mellon University)
Frank Pfenning
(Carnegie Mellon University)

We describe Concurrent C0, a type-safe C-like language with contracts and session-typed communication over channels. Concurrent C0 supports an operation called forwarding which allows channels to be combined in a well-defined way. The language's type system enables elegant expression of session types and message-passing concurrent programs. We provide a Go-based implementation with language based optimizations that outperforms traditional message passing techniques.

In Iliano Cervesato and Maribel Fernández: Proceedings Fourth International Workshop on Linearity (LINEARITY 2016), Porto, Portugal, 25 June 2016, Electronic Proceedings in Theoretical Computer Science 238, pp. 73–82.
Extended version at: this http URL
Published: 17th January 2017.

ArXived at: https://dx.doi.org/10.4204/EPTCS.238.8 bibtex PDF

Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org