gmt@arizona.edu (Gregg Townsend) (08/04/89)
A revised implementation of the SR programming language is now available from the University of Arizona by anonymous FTP or by mail. The new version is a little faster, a little more robust, and a lot more portable. Some minor changes and enhancements have also been made to the language itself. SR (Synchronizing Resources) is designed for writing distributed programs. The main language constructs are resources and operations. Resources encapsulate processes and variables they share; operations provide the primary mechanism for process interaction. SR provides a novel integration of the mechanisms for invoking and servicing operations. Consequently, all of local and remote procedure call, rendezvous, message passing, dynamic process creation, multicast, and semaphores are supported. An overview of the language and implementation appeared in the January, 1988, issue of TOPLAS (ACM Transactions on Programming Languages and Systems 10,1, 51-86). SR has been used at a number of universities and labs for course work and research projects involving concurrent programming. It has been used in concurrent programming courses to reinforce concepts with small programming projects and with larger projects such as replicated databases, distributed simulations, and parts of distributed operating systems such as file systems and command interpreters. SR has also been used as a tool in several masters theses and to implement larger systems such as a system for mixed language programming, one for distributed implementation of graph algorithms, experiments with load balancing algorithms, and experiments with upcall program structures. SR now runs on any of these machines: Vax (BSD Unix, or Ultrix with gcc) Sun 2, Sun 3, or Sun 4 Decstation 3100 NeXT Hewlett Packard 9000 (series 300 and 800) Encore Multimax (Umax) An SR program runs on one or more networked machines of the same architecture. SR is available by anonymous FTP from Arizona.EDU (128.196.128.118 or 192.12.69.1). SR tar(1) files are available in the sr subdirectory; be sure to transfer files in binary (image) mode. The files are: sr.tar The SR programming language, including source code, documentation, checkout programs, and examples. vs.tar Extended verification suite, needed only if you're going to modify the system or port it to a new architecture. The same files are also available in compress(1) form as sr.tar.Z and vs.tar.Z. If you pick up a copy of SR by FTP, please let us know by email to "sr-project@Arizona.EDU". This address can also be used for any questions or comments. Via uucp, you can reach us at uunet!arizona!sr-project. SR is available by mail on 1/2" magnetic tape or 1/4" Sun cartridge. For details and an order blank, contact the SR project at the email address above; or call (602) 621-2018; or send a letter to: SR Project Department of Computer Science University of Arizona Tucson, AZ 85721 An electronic mailing list is in place for discussing SR topics. You can join by sending your email address to "info-sr-request@Arizona.EDU".