Orca: a language for distributed programming

We present a simple model of shared data-objects, which extends the abstract data type model to support distributed programming. Our model essentially provides shared address space semantics, rather than message passing semantics, without requiring physical shared memory to be present in the target system. We also propose a new programming language, Orca, based on shared dataobjects. A compiler and three different run time systems for Orca exist, which have been in use for over a year now.

[1]  Henri E. Bal,et al.  Implementing Distributed Algortihms using Remote Procedure Call , 1899 .

[2]  Per Brinch Hansen,et al.  The programming language Concurrent Pascal , 1975, IEEE Transactions on Software Engineering.

[3]  Craig Schaffert,et al.  Abstraction mechanisms in CLU , 1977, Commun. ACM.

[4]  David R. Cheriton,et al.  Preliminary thoughts on problem-oriented shared memory: a decentralized approach to distributed systems , 1985, OPSR.

[5]  Nicholas Carriero,et al.  Distributed data structures in Linda , 1986, POPL '86.

[6]  Nicholas Carriero,et al.  Linda and Friends , 1986, Computer.

[7]  Andrew S. Tanenbaum,et al.  The Design of a Capability-Based Distributed Operating System , 1986, Comput. J..

[8]  Larry Carter,et al.  Distrbution and Abstract Types in Emerald , 1987, IEEE Transactions on Software Engineering.

[9]  Alessandro Forin,et al.  Architectural support for multilanguage parallel programming on heterogeneous systems , 1987, ASPLOS.

[10]  R. V. Renesse,et al.  Implementing distributed algorithms using remote procedure calls , 1987 .

[11]  Alessandro Forin,et al.  Architectural support for multilanguage parallel programming on heterogeneous systems , 1987, ASPLOS 1987.

[12]  Henri E. Bal,et al.  A Distributed Implementation of the Shared Data-object Model , 1989 .

[13]  Robert-Jan Elias Oracol, a Chess Problem Solver in Orca , 1989, J. Int. Comput. Games Assoc..

[14]  Paul Hudak,et al.  Memory coherence in shared virtual memory systems , 1989, TOCS.

[15]  Henri E. Bal,et al.  Programming languages for distributed computing systems , 1989, CSUR.

[16]  Brett D. Fleisch,et al.  Mirage: a coherent distributed shared memory design , 1989, SOSP '89.

[17]  Henri E. Bal,et al.  An efficient reliable broadcast protocol , 1989, OPSR.

[18]  Henri E. Bal,et al.  Experience with the Distributed Data Structure Paradigm in Linda , 1989 .

[19]  Henri E. Bal,et al.  Experience with distributed programming in Orca , 1990, Proceedings. 1990 International Conference on Computer Languages.

[20]  Henri E. Bal Programming distributed systems , 1990 .

[21]  Henri E. Bal,et al.  Distributed Programming with Shared Data , 1991, Comput. Lang..

[22]  Henri E. Bal,et al.  Replication techniques for speeding up parallel applications on distributed systems , 1992, Concurr. Pract. Exp..