Results 1 -
2 of
2
Type-based Object Immutability with Flexible Initialization
"... Abstract. We present a type system for checking object immutability, reference immutability, and class immutability in an open or closed world. In order to separate object initialization from object constructors (which is often needed in practice), immutable objects are initialized in lexically scop ..."
Abstract
-
Cited by 5 (0 self)
- Add to MetaCart
Abstract. We present a type system for checking object immutability, reference immutability, and class immutability in an open or closed world. In order to separate object initialization from object constructors (which is often needed in practice), immutable objects are initialized in lexically scoped regions. The system is simple and direct; its only type qualifiers specify immutability properties. No auxiliary annotations, e.g., ownership types, are needed, yet good support for deep immutability is provided. To express object confinement, as required for class immutability in an open world, we make use of qualifier polymorphism. The system has two versions: one version with explicit specification commands that delimit the object initialization phase, and one version where such commands are implicit and inferred. In the latter version, all annotations are compatible with
Stealing Cycles One Object at a Time
"... Abstract β We illustrate a simple but powerful program transformation whereby given an infinite number of processors (taken as individual hosts on the network) and virtually any program written in Java, every object in the resulting program runs on its own host. Thus a program can distribute its obj ..."
Abstract
- Add to MetaCart
Abstract β We illustrate a simple but powerful program transformation whereby given an infinite number of processors (taken as individual hosts on the network) and virtually any program written in Java, every object in the resulting program runs on its own host. Thus a program can distribute its objects on the network wherever cycles are available. Lack of reliability in the network and relationship with web services, grid computing and XML-based network protocols are briefly discussed at the end. I. A BRIEF HISTORICAL PERSPECTIVE Object-oriented programming is really about programming over a distributed platform. A paragraph from [1] will help us capture this primordial aspect: βIn 1961 [Alan] Kay worked on the problem of transporting data files and procedures from one Air Force air training installation to another and discovered that some unknown programmer had figured out a clever

