Sciweavers

ICALP
2004
Springer

A Calculus of Coroutines

14 years 4 months ago
A Calculus of Coroutines
We describe a simple but expressive calculus of sequential processes, represented as coroutines. We show that this calculus can be used to express a variety of programming language features including procedure calls, labelled jumps, integer references and stacks. We describe the operational properties of the calculus using reduction rules and equational axioms. We describe a notion of categorical model for our calculus, and give a simple example of such a model based on a category of games and strategies. We prove full ion results showing that equivalence in the categorical model corresponds to observational equivalence in the calculus, and also to equivalence of evaluation trees, which are infinitary normal forms for the calculus. We show that our categorical model can be used to interpret the untyped λcalculus and use this fact to extract a sound translation of the latter into our calculus of coroutines.
James Laird
Added 01 Jul 2010
Updated 01 Jul 2010
Type Conference
Year 2004
Where ICALP
Authors James Laird
Comments (0)