Arrow Research search
Back to I&C

I&C 2007

Linear forwarders

Journal Article journal-article Computer Science · Theoretical Computer Science

Abstract

A linear forwarder is a process that receives one message on a channel and sends it on a different channel. We use linear forwarders to provide a distributed implementation of Milner’s asynchronous pi calculus. Such a distributed implementation is known to be difficult due to input capability, where a received name is used as the subject of a subsequent input. This allows the dynamic creation of large input processes in the wrong place, thus requiring comparatively large code migrations in order to avoid consensus problems. Linear forwarders constitute a small atom of input capability that is easy to move. We show that the full input capability can be simply encoded using linear forwarders. We also design a distributed machine, demonstrating the ease with which we can implement the pi calculus using linear forwarders. We also show that linear forwarders allow for a simple encoding of distributed choice and have “clean” behaviour in the presence of failures.

Authors

Keywords

  • Pi-calculus
  • Distributed implementation
  • Input capability
  • Linear forwarders

Context

Venue
Information and Computation
Archive span
1987-2026
Indexed papers
3021
Paper id
874553063020565319
v2026.09.13