Abstract machines for game semantics, revisited

Olle Fredriksson, Dan R. Ghica

Research output: Contribution to journalConference articlepeer-review

10 Citations (Scopus)


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 (non-Alternating games). We illustrate the potential of this technique by implementing a toy distributed compiler for ICA, a higher-order programming language with shared state concurrency, thus significantly extending our previous distributed PCF compiler. We show that compilation is sound and memory-safe, i.e. no (distributed or local) garbage collection is necessary.

Original languageEnglish
Article number6571589
Pages (from-to)560-569
Number of pages10
JournalProceedings - Symposium on Logic in Computer Science
Publication statusPublished - 9 Sept 2013
Event2013 28th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2013 - New Orleans, LA, United States
Duration: 25 Jun 201328 Jun 2013


  • abstract machines
  • distributed compilation
  • game semantics

ASJC Scopus subject areas

  • Software
  • Mathematics(all)


Dive into the research topics of 'Abstract machines for game semantics, revisited'. Together they form a unique fingerprint.

Cite this