Results 11 -
15 of
15
Object Models for Distributed or Persistent Programming
- The Computer Journal
, 1998
"... As use of object orientation for application development has increased, many researchers have investigated the design of object-based programming languages for the distributed and persistent programming. This paper concentrates on reviewing a number of object-oriented languages for distributed or pe ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
As use of object orientation for application development has increased, many researchers have investigated the design of object-based programming languages for the distributed and persistent programming. This paper concentrates on reviewing a number of object-oriented languages for distributed or persistent programming. In each case, the focus is on the object model supported and the mechanisms and policies employed in the implementation of distributed or persistent objects. In particular, each language reviewed has been chosen to illustrate a particular object model or implementation strategy. Key words: Distributed Systems Implementation, Persistence, Distributed Programming, Object Orientation. Introduction In recent years, considerable interest in the design of parallel and distributed applications has emerged from various computer disciplines such as database systems, network systems, operating systems, and computer architecture as well as the traditional high performance commun...
PM3: An Orthogonally Persistent Systems Programming Language -- Design, Implementation, Performance
- IN PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON VERY LARGE DATA BASES
, 1999
"... PM3 is an orthogonally persistent extension of the Modula-3 systems programming language, supporting persistence by reachability from named persistent roots. We describe the design and implementation of the PM3 prototype, and show that its performance is competitive with its nonorthogonal coun ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
PM3 is an orthogonally persistent extension of the Modula-3 systems programming language, supporting persistence by reachability from named persistent roots. We describe the design and implementation of the PM3 prototype, and show that its performance is competitive with its nonorthogonal counterparts by direct comparison with the SHORE/C++ language binding to the SHORE object store. Experimental results, using the traversal portions of the OO7 benchmark, reveal that the overheads of orthogonal persistence are not inherently more expensive than for nonorthogonal persistence, and justify our claim that orthogonal persistence deserves a level of acceptance similar to that now emerging for automatic memory management (i.e., "garbage collection"), even in performance-conscious settings. The consequence will be safer and more flexible persistent systems that do not compromise performance.
Barbados: an Integrated Persistent Programming Environment
, 1997
"... “But to this day I thank my friends for constantly reminding me of a very important word called Persistence. Persistence is to the quality of the character of man, what carbon is to steel. ”- Billy Ray Cyrus ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
“But to this day I thank my friends for constantly reminding me of a very important word called Persistence. Persistence is to the quality of the character of man, what carbon is to steel. ”- Billy Ray Cyrus
Expressing Object Residency Optimizations Using Pointer Type Annotations
- Persistent Object Systems
, 1994
"... We consider some issues in optimizing persistent programming languages. In particular, we show how to express optimizations of object residency checks in strongly typed persistent languages as "annotations" on pointer types. These annotations essentially extend and refine the type system of the lang ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
We consider some issues in optimizing persistent programming languages. In particular, we show how to express optimizations of object residency checks in strongly typed persistent languages as "annotations" on pointer types. These annotations essentially extend and refine the type system of the language, and they have at least two significant uses. First, a programmer can use them to express desired residency properties to be enforced by the language implementation (compiler plus run time). Second, we can use them to separate a persistence optimizer, which adds annotations, from the remainder of the compiler, which simply obeys them. This gives rise to a nice separation of concerns in supporting high-performance persistence: the "intelligent" optimizer can be factored off from the rest of the compiler. In addition to modularity benefits, the separation allows us to explore the value of various optimizations without actually implementing them in the optimizer. Rather, we can optimize pr...

