Skip to search boxSkip to navigationSkip to main content

Calculating Compilers for Concurrency

  • University of Nottingham
Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Open access

Publication Information

Output type

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

Original language

English

Article number

213

Pages from-to (Number of pages)

Pages 740–767 (28 pages)

Journal (Volume, Issue Number)

Proceedings of the ACM on Programming Languages (Volume 7, Issue ICFP)

Publication milestones

  • Published - 31/08/2023

Publication status

Published - 31/08/2023

Publication IDs

  • Scopus: 85170646175

Abstract

Choice trees have recently been introduced as a general structure for defining the semantics of programming languages with a wide variety of features and effects. In this article we focus on concurrent languages, and show how a codensity version of choice trees allows the semantics for such languages to be systematically transformed into compilers using equational reasoning techniques. The codensity construction is the key ingredient that enables a high-level, algebraic approach. As a case study, we calculate a compiler for a concurrent lambda calculus with channel-based communication.

Publication metrics

PlumX, opens in new tab

Citations
6
Captures
2

Access to documents