Skip to search boxSkip to navigationSkip to main content

Deadlock-freedom-by-design: Multiparty Asynchronous Global Programming

Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Publication Information

Output type

Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Original language

English

Pages from-to (Number of pages)

Pages 263-274

Journal (Volume, Issue Number)

ACM SIGPLAN Notices (Volume 48, Issue 1)

Publication milestones

  • Published - 2013

Publication status

Published - 2013

ISSN

1523-2867

Abstract

Over the last decade, global descriptions have been successfully employed for the verification and implementation of communicating systems, respectively as protocol specifications and choreographies. In this work, we bring these two practices together by proposing a purely-global programming model. We show a novel interpretation of asynchrony and parallelism in a global setting and develop a typing discipline that verifies choreographies against protocol specifications, based on multiparty sessions. Exploiting the nature of global descriptions, our type system defines a new class of deadlock-free concurrent systems (deadlock-freedom-by-design), provides type inference, and supports session mobility. We give a notion of Endpoint Projection (EPP) which generates correct entity code (as pi-calculus terms) from a choreography. Finally, we evaluate our approach by providing a prototype implementation for a concrete programming language and by applying it to some examples from multicore and service-oriented programming.