Meld

Developed by:
Columbia University, Dept. of Computer Science, New York, USA Steven S. Popovich, Shyhtsum F. Wu, and Gail E. Kaiser

Short Description:
The Meld object-oriented programming language supports classes, strong tying, active values, multiple inheritance, and separate compilation of modular units called features. These facilities were developed for an early version of Meld, without persistence , concurrency or distribution. Meld allows any class to be declared persistent, and instances of persistent classes are stored in a database. Access to persistent and/or remote objects are stored locally or remotely, transiently or persistently. Meld crea tes new threads of control for both asynchronous messages and synchronous procedure calls. Synchronous calls are implemented internally by an asynchronous message pass followed immediately by a statement waiting for the return message. Multiple threads ma y execute concurrently in the same object. All message passing outside of the local process goes through the name server, which looks up the object identifier and forwards the message to the proper host, where it is delivered to the destination process by the remote server.

Model: client/server, object-oriented
Properties: synchronization, atomic transactions, message passing, persistent objects, name server, synchronous and asynchronous message passing, RPC
Transparency: concurrency, control, location
Running on:
Date: 1992Ð?



References:
Steven S. Popovich, Shyhtsum F. Wu, and Gail E. Kaiser: "An Object-Based Approach to Implementing Distributed Concurrency Control", IEEE Computer Society Press, Proceedings of the 11th International Conference on Distributed Computing Systems, Arlington, Texas, USA, May 20-24, 1991, pp. 65Ð72.

P.A. Bernstein, Vassos Hadzilacos, and N. Goodman: "Concurrency Control and Recovery in Database Systems", Addison-Wesley, Reading MA, 1987.

G.E. Kaiser and D.Garlan: "Melding Software Systems from Reusable Building Blocks", IEEE Software 4(4): 17Ð24, July, 1987.



© 1995, Alfred Lupper, Department of Computer Science, University of Ulm