Combining and Relating Control Effects and their Semantics

James Laird
(University of Bath)

Combining local exceptions and first class continuations leads to programs with complex control flow, as well as the possibility of expressing powerful constructs such as resumable exceptions. We describe and compare games models for a programming language which includes these features, as well as higher-order references. They are obtained by contrasting methodologies: by annotating sequences of moves with ''control pointers'' indicating where exceptions are thrown and caught, and by composing the exceptions and continuations monads.

The former approach allows an explicit representation of control flow in games for exceptions, and hence a straightforward proof of definability (full abstraction) by factorization, as well as offering the possibility of a semantic approach to control flow analysis of exception-handling. However, establishing soundness of such a concrete and complex model is a non-trivial problem. It may be resolved by establishing a correspondence with the monad semantics, based on erasing explicit exception moves and replacing them with control pointers.

In Ugo de'Liguoro and Alexis Saurin: Proceedings First Workshop on Control Operators and their Semantics (COS 2013), Eindhoven, The Netherlands, June 24-25, 2013 , Electronic Proceedings in Theoretical Computer Science 127, pp. 113–129.
Published: 4th September 2013.

ArXived at: https://dx.doi.org/10.4204/EPTCS.127.8 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org