A Language for Parallel and Distributed Programming
Ronald A. Olsson, Gregory R. Andrews, Michael H. Coffin, Gregg M. Townsend · 1999
This paper introduces the newest version of the SR concurrent programming language and illustrates how it provides support for different execution environments, ranging from shared-memory multiprocessors to distributed systems. SR uses a few well-integrated mechanisms for concurrency to provide flexible, yet efficient, support for parallel and distributed programming. This paper gives several realistic examples to illustrate these language mechanisms. 1. Introduction The SR concurrent programming language has been around, in one form or another, for over ten years. The earliest version, now called SR 0 , contained mechanisms for asynchronous message passing and rendezvous [Andr81,Andr82]. Its form of rendezvous, unique at the time, provided a means by which the process servicing a rendezvous could choose which invocation to service based on the values of invocation parameters. Experience using SR 0 substantiated the general appropriateness of the language, but also pointed out se...