Abstract machines for game semantics, revisited
Olle Fredriksson, Dan R. Ghica

TL;DR
This paper introduces new abstract machines based on game semantics, enabling structured compilation for distributed systems, supporting state and concurrency, and demonstrated through a toy distributed compiler for ICA.
Contribution
It defines HRAM and GAM models for game semantics, enabling composition and distributed compilation of languages with state and concurrency.
Findings
HRAMs can represent complex language features
GAMs require HRAM combinators for composition
Distributed ICA compiler is sound and memory-safe
Abstract
We define new abstract machines for game semantics which correspond to networks of conventional computers, and can be used as an intermediate representation for compilation targeting distributed systems. This is achieved in two steps. First we introduce the HRAM, a Heap and Register Abstract Machine, an abstraction of a conventional computer, which can be structured into HRAM nets, an abstract point-to-point network model. HRAMs are multi-threaded and subsume communication by tokens (cf. IAM) or jumps. Game Abstract Machines (GAM), are HRAMs with additional structure at the interface level, but no special operational capabilities. We show that GAMs cannot be naively composed, but composition must be mediated using appropriate HRAM combinators. HRAMs are flexible enough to allow the representation of game models for languages with state (non-innocent games) or concurrency…
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
TopicsLogic, programming, and type systems · Parallel Computing and Optimization Techniques · Artificial Intelligence in Games
