language: en

A Distributed Protocol for Channel-Based Communication with Choice

Frederick Knabe
European Computer-Industry Research Centre GmbH
Munich, Germany
knabe@ecrc.de

Abstract Recent attempts at incorporating concurrency into functional languages have identified synchronous communication via shared channels as a promising primitive. An additional useful feature found in many proposals is a nondeterministic choice operator. Similar in nature to the CSP alternative command, this operator allows different possible actions to be guarded by sends or receives. Choice is difficult to implement in a distributed environment because it requires offering many potential communications but closing only one. In this paper we present the first distributed, deadlock-free algorithm for choice.

Keywords: Distributed protocols, channels, synchronous communication, choice operator, CSP alternative command.

1. INTRODUCTION