|
ABSTRACT
SR is a language for programming distributed systems ranging from operating systems to application programs. On the basis of our experience with the initial version, the language has evolved considerably. In this paper we describe the current version of SR and give an overview of its implementation. The main language constructs are still resources and operations. Resources encapsulate processes and variables that they share; operations provide the primary mechanism for process interaction. One way in which SR has changed is that both resources and processes are now created dynamically. Another change is that inheritance is supported. A third change is that the mechanisms for operation invocation—call and send—and operation implementation—proc and in—have been extended and integrated. Consequently, all of local and remote procedure call, rendezvous, dynamic process creation, asynchronous message passing, multicast, and semaphores are supported. We have found this flexibility to be very useful for distributed programming. Moreover, by basing SR on a small number of well-integrated concepts, the language has proved easy to learn and use, and it has a reasonably efficient implementation.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
ADA. Reference manual for the Ada programming language. ANSI/MIL-STD-1815A, American National Standards Institute, New York, Jan. 1983.
|
 |
2
|
|
| |
3
|
ANDREWS, G. R. The distributed programming language SR-Mechanisms, design and imple mentation. Softw. Pratt. Exper. 12, 8 (Aug. 1982), 719-754.
|
| |
4
|
ANDREWS, G. R., AND OLSSON, R. A. The evolution of the SR language. D&rib. Comput. 1, 3 (July 1986), 133-149.
|
| |
5
|
ANDREWS, G. R., AND OLSSON, R. A. Revised report on the SR programming language. TR 87- 27, Dept. of Computer Science, Univ. of Arizona, Tucson, Ariz., Nov. 1987.
|
| |
6
|
|
| |
7
|
ATKINS, S. Experiments in SR with different upcall program structures. Tech. Rep. Dept. of Computer Science, Simon Fraser Univ., Burnaby, B.C., Canada, Apr. 1987.
|
| |
8
|
ATKINS, S., AND OLSSON, R. A. Performance of multitasking and synchronisation mechanisms. CSE-87-10, Div. of Computer Science, Univ. of California at Davis, July 1987.
|
| |
9
|
|
 |
10
|
|
| |
11
|
BLACK, A. P., HUTCHINSON, N., MCCORD, B. C., AND RAJ, R. K. EPL programmer's guide. Eden Project, Dept. of Computer Science, Univ. of Washington, Seattle, Wash., June 1984.
|
| |
12
|
|
 |
13
|
|
 |
14
|
|
| |
15
|
CHERITON, D. R. The V kernel: A software base for distributed systems. IEEE Software 1, 2 (Apr. 1984), 19-42.
|
 |
16
|
|
 |
17
|
|
 |
18
|
|
| |
19
|
COOK R. *Mod-A language for distributed programming. IEEE Trans. Softw. Eng. SE-6, 6 (Nov. 1980), 563-571.
|
 |
20
|
|
| |
21
|
|
| |
22
|
|
 |
23
|
|
 |
24
|
|
| |
25
|
|
 |
26
|
|
 |
27
|
|
 |
28
|
|
| |
29
|
MITCHELL, J. G., MAYBURY, W., AND SWEET, R. Mesa language manual, version 5.0. Rep. CSL- 79-3, Xerox Palo Alto Research Center, Palo Alto, Calif, Apr. 1979.
|
| |
30
|
|
| |
31
|
PARR, F. N., AND STROM, R. E. NIL: A high-level language for distributed systems programming. IBM Syst. J. 22, l/2 (1983), 111-:127.
|
| |
32
|
|
 |
33
|
|
| |
34
|
SCHLICHTING, R. D., CRISTIAN, F., AND PURDIN, T. Mechanisms for failure handling in distributed programming languages. TR 87-13, Dept. of Computer Science, Univ. of Arizona, Tucson, Ariz., June 1987.
|
| |
35
|
|
| |
36
|
STROM, R. E., AND YEMINI, S. NIL: An integrated language and system for distributed{ programming. Res. Rep. RC 9949, IBM Research Division, Yorktown Heights, N.Y., Apr. 1983.
|
 |
37
|
|
| |
38
|
WIRTH, N. Modula: A language for modular multiprogramming. Softw. Pratt. Enper. 7, (1977), 3-35.
|
| |
39
|
|
CITED BY 41
|
|
|
|
|
|
|
|
|
|
|
R. Jha , G. Eisenhauer, Distributed Ada-approach and implementation, Proceedings of the conference on Tri-Ada '89: Ada technology in context: application, development, and deployment, p.439-449, January 1989, Pittsburgh, Pennsylvania, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ajit Singh , Jonathan Schaeffer , Duane Szafron, Views on template-based parallel programming, Proceedings of the 1996 conference of the Centre for Advanced Studies on Collaborative research, p.35, November 12-14, 1996, Toronto, Ontario, Canada
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Hiu Ning (Angela) Chan , Andrew J. Gallagher , Appu S. Goundan , Yi Lin William Au Yeung , Aaron W. Keen , Ronald A. Olsson, Generic operations and capabilities in the JR concurrent programming language, Computer Languages, Systems and Structures, v.35 n.3, p.293-305, October, 2009
|
REVIEW
"Peter Milligan : Reviewer"
This long and somewhat complicated paper presents, as the title
suggests, an overview of the SR language and its implementation.
The SR language was redesigned and reimplemented following extensive
use of its predecessor SR0>. The au
more...
|