Logical Methods in Computer Science (Dec 2014)

On the Relation of Interaction Semantics to Continuations and Defunctionalization

  • Ulrich Schöpp

DOI
https://doi.org/10.2168/LMCS-10(4:10)2014
Journal volume & issue
Vol. Volume 10, Issue 4

Abstract

Read online

In game semantics and related approaches to programming language semantics, programs are modelled by interaction dialogues. Such models have recently been used in the design of new compilation methods, e.g. for hardware synthesis or for programming with sublinear space. This paper relates such semantically motivated non-standard compilation methods to more standard techniques in the compilation of functional programming languages, namely continuation passing and defunctionalization. We first show for the linear {\lambda}-calculus that interpretation in a model of computation by interaction can be described as a call-by-name CPS-translation followed by a defunctionalization procedure that takes into account control-flow information. We then establish a relation between these two compilation methods for the simply-typed {\lambda}-calculus and end by considering recursion.

Keywords