Making Concurrency Functional
Glynn Winskel

TL;DR
This paper explores the connection between functional and interactive computation paradigms using concurrent games, revealing how various functional programming models naturally emerge from this framework and how to extend strategies to probabilistic and quantum computations.
Contribution
It introduces a unified framework based on concurrent games that connects functional and interactive paradigms, and shows how to lift functions to strategies within this setting.
Findings
Concurrent games clarify the distinction between system and environment.
Functional paradigms emerge as subcategories of concurrent games.
Strategies can be extended to probabilistic and quantum computations.
Abstract
The article bridges between two major paradigms in computation, the functional, at basis computation from input to output, and the interactive, where computation reacts to its environment while underway. Central to any compositional theory of interaction is the dichotomy between a system and its environment. Concurrent games and strategies address the dichotomy in fine detail, very locally, in a distributed fashion, through distinctions between Player moves (events of the system) and Opponent moves (those of the environment). A functional approach has to handle the dichotomy much more ingeniously, through its blunter distinction between input and output. This has led to a variety of functional approaches, specialised to particular interactive demands. Through concurrent games we can more clearly see what separates and connects the differing paradigms, and show how: * to lift functions…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsComputability, Logic, AI Algorithms · Advanced Database Systems and Queries · Logic, programming, and type systems
