Results 1 -
4 of
4
The Design And Implementation of Distributed Smalltalk
, 1987
"... Distributed Smalltalk (DS) is an implementation of Smalltalk that allows objects on different machines to send and respond to messages. It also provides some capability for sharing objects among users. The distributed aspects of the system are largely user transparent and preserve the reactive quali ..."
Abstract
-
Cited by 51 (3 self)
- Add to MetaCart
Distributed Smalltalk (DS) is an implementation of Smalltalk that allows objects on different machines to send and respond to messages. It also provides some capability for sharing objects among users. The distributed aspects of the system are largely user transparent and preserve the reactive quality of Smalltalk objects. Distributed Smalltalk is currently operational on a network of Sun workstations. The implementation includes an incremental distributed garbage collector and support for remote debugging, access control, and object mobility. This paper concentrates on the important design issues encountered and some of the more interesting implementation details. Performance measurements of the current implementation are included. 1 Introduction Smalltalk [Ingalls 78, Goldberg and Robson 83] is a language and highly interactive programming environment originally developed for the Xerox family of personal workstations and now implemented on a variety of different hosts. The Smalltalk...
Equal Rights for Functional Objects or, The More Things Change, The More They Are the Same
, 1993
"... DATA TYPES A. Comparing Type Objects There has been as much confusion over type identity as there has been over object identity, although the type identity problem is usually referred to as the type equivalence problem [Aho86,s.6.3] [Wegbreit74] [Welsh77]. The type identity problem is to determine ..."
Abstract
-
Cited by 20 (7 self)
- Add to MetaCart
DATA TYPES A. Comparing Type Objects There has been as much confusion over type identity as there has been over object identity, although the type identity problem is usually referred to as the type equivalence problem [Aho86,s.6.3] [Wegbreit74] [Welsh77]. The type identity problem is to determine when two types are equal, so that type checking can be done in a programming language. 22 Algol-68 takes the point of view of "structural" equivalence, in which nonrecursive types that are built up from primitive types using the same type constructors in the same order should compare equal, while Ada takes the point of view of "name" equivalence, in which types are equivalent if and only if they have the same name. We will ignore the software engineering issues of which kind of type equivalence makes for better-engineered programs, and focus on the basic issue of type equivalence itself. We note that if a type system offers the type TYPE---i.e., it offers first-class representations of typ...
Applications of Static Analysis to Concurrency Control and Recovery in Objectbase Systems
, 1994
"... This dissertation explores the use of statically derived information to improve concurrency control and recovery in objectbase systems. It surveys the relevant background material including existing objectbase systems and conventional concurrency control and recovery. The problem of providing concur ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
This dissertation explores the use of statically derived information to improve concurrency control and recovery in objectbase systems. It surveys the relevant background material including existing objectbase systems and conventional concurrency control and recovery. The problem of providing concurrency control and recovery in objectbases supporting nested transactions is analyzed and types of static information which are useful to concurrency control and recovery are determined. Algorithms are proposed to derive the needed static information. The problem of concurrency control in objectbases is decomposed into two simpler problems: intra-transaction concurency control and inter-transaction concurrency control and algorithms are developed for each. A novel concurrency control algorithm combining the algorithms for intra- and inter-transaction concurrency control which specifies serialization orders ` a priori is presented. The algorithm selects appropriate serialization orders based o...
Distributed Smalltalk: Inheritance and Reactiveness in Distributed Systems
, 1988
"... Smalltalk is an object-oriented programming language and highly interactive uniformly object-structured programming environment, originally developed for the Xerox family of personal workstations. The Smalltalk programming environment supports a single user on a single processor in a single object ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Smalltalk is an object-oriented programming language and highly interactive uniformly object-structured programming environment, originally developed for the Xerox family of personal workstations. The Smalltalk programming environment supports a single user on a single processor in a single object address space. This thesis describes the design and implementation of Distributed Smalltalk. Distributed Smalltalk extends the Smalltalk system to support the interaction of many users on many machines. It provides communication and interaction among geographically remote Smalltalk users, direct access to remote objects, the ability to construct distributed applications in the Smalltalk environment, and a degree of object sharing among users. Applications of Distributed Smalltalk include mail systems, remote computation servers, remote file servers, and collaborative software development. The distributed aspects of the system are largely user transparent and preserve the reactive quality of Smalltalk objects. A system is reactive to the degree that objects in the system can be easily presented for inspection or modification. Smalltalk is highly reactive in that all objects in the system can be so presented. Inheritance is a fundamental property of Smalltalk that allows objects to acquire behavior from other objects. In designing Distributed Smalltalk, we found that the interaction of inheritance and reactiveness was a major source of difficulty and that this interaction had significant impact on the design of a distributed system. Neither inheritance or reactiveness scaled well fro...

