Experience with distributed Smalltalk

Distributed Smalltalk (DS) is an implementation of Smalltalk that supports the interaction of many Smalltalk users on many machines. It provides communication and interaction among remote Smalltalk users, direct access to remote objects, and a degree of object sharing among users. The distributed aspects of the system are largely user transparent. Many of the major design issues and implementation decisions associated with Distributed Smalltalk have previously been reported. This paper concentrates on the impact of those decisions and describes how DS is used to build distributed applications. Three example applications are described: remote file access, animated distributed objects, and offloading a compute‐intensive task to a non‐Smalltalk host. Based on our experience with DS, we present an evaluation of its design and implementation.

[1]  Dominique Decouchant Design of a distributed object manager for the Smalltalk-80 system , 1986, OOPSLA 1986.

[2]  Paul L. McCullough Transparent forwarding: First steps , 1987, OOPSLA 1987.

[3]  Henry Lieberman,et al.  Using Prototypical Objects to Implement Shared Behavior in Object Oriented Systems , 1986, OOPSLA.

[4]  H. T. Kung,et al.  An efficient parallel garbage collection system and ITS correctness proof , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[5]  Edward D. Lazowska,et al.  Distributed smalltalk: inheritance and reactiveness in distributed systems , 1988 .

[6]  J. McAffer,et al.  Actra-a multitasking/multiprocessing smalltalk , 1988, OOPSLA/ECOOP '88.

[7]  Steven E. Lucco Parallel programming in a virtual object space , 1987, OOPSLA 1987.

[8]  Marcel Schelvis,et al.  The Implementation of a Distributed Smalltalk , 1988, ECOOP.

[9]  Steven R. Vegdahl Moving structures between Smalltalk images , 1986, OOPSLA 1986.

[10]  Jr. Robert Joseph Chansler,et al.  Coupling in systems with many processors , 1982 .

[11]  Daniel H. H. Ingalls,et al.  The Smalltalk-76 programming system design and implementation , 1978, POPL.

[12]  Andrew P. Black,et al.  The Eden System: A Technical Review , 1985, IEEE Transactions on Software Engineering.

[13]  John K. Bennett The design and implementation of distributed Smalltalk , 1987, OOPSLA 1987.

[14]  David W. Sandberg An alternative to subclassing , 1986, OOPSLA 1986.

[15]  L. Peter Deutsch,et al.  Efficient implementation of the smalltalk-80 system , 1984, POPL.

[16]  Alan Borning,et al.  Classes versus Prototypes in Object-Oriented Languages , 1986, FJCC.

[17]  William A. Wulf,et al.  Policy/mechanism separation in Hydra , 1975, SOSP.

[18]  Alan Snyder Encapsulation and inheritance in object-oriented programming languages , 1986, OOPSLA 1986.

[19]  Andrew P. Black,et al.  Object structure in the Emerald system , 1986, OOPSLA 1986.