2,246 papers · page 94 of 113
Hidehiko Masuhara, Satoshi Matsuoka, Kenichi Asai, Akinori Yonezawa
Meta-level programmability is beneficial for parallel/distributed object-oriented computing to improve performance, etc. The major problem, however, is interpretation overhead due to mta-circular interpretation. To solve this problem, we propose a compilation framework for object…
John D. McGregor, Edward V. Berard, Donald Firesmith, Don Marick, Dav Thomson
No abstract available.
Philippe Mulet, Jacques Malenfant, Pierre Cointe
Reflective programming languages are those where users' programs are allowed to customize in an organized way the behavior of the language to their own needs. For ten years now, most of the work on reflection revolved around the definition and the implementation of metaobject pro…
Andrew C. Myers
Existing schemes for object layout and dispatch in the presence of multiple inheritance and separate compilation waste space and are slower than systems with single inheritance. This paper describes the bidirectional object layout, a new scheme for object layout that produces sma…
Harold Ossher, Matthew Kaplan, William H. Harrison, Alexander Katz, Vincent J. Kruskal
Subject-oriented programming supports composition of object-oriented programs or program fragments called subjects. This paper presents an approach to the composition rules used to specify composition details. Rules can be generic, allowing different subrules to be "plugged into"…
Dirk Riehle
A good reusable framework, pattern or module interface usually is represented by abstract classes. They form an abstract design and leave the implementation to concrete subclasses. The abstract design is instantiated by naming these subclasses. Unfortunately, this exposes impleme…
Jonathan G. Rossie Jr., Daniel P. Friedman
Existing formalisms of inheritance are not sufficient to model the complexities of the kind of multiple inheritance exemplified in C++. Any satisfactory formalism must model the complicating effects of virtual and nonvirtual base classes as well as virtual and non-virtual methods…
Aamod Sane, Roy H. Campbell
Software specification and implementation techniques based on state machines simplify design, coding, and validation. However, large systems require complex state machines. Incremental construction techniques can control this complexity. In this paper, we present a construction t…
Hans Albrecht Schmid
The class and interaction structure of object-oriented designs may become fairly complex, and consequently difficult to develop and understand.Design patterns allow to govern this complexity.This paper presents the design process of a domain-specific black-box framework for the c…
Walter R. Smith
Object-oriented user interface frameworks are usually implemented in a class-based language. We chose instead to develop a prototype-based language, NewtonScript, for this purpose. We found that prototype inheritance has compelling advantages over classes in the domain of user in…
Randall B. Smith, John Maloney, David M. Ungar
Manipulating programs is hard, while manipulating objects in the physical world is often easy. Several attributes of the physical world help make it comprehensible and manipulable: concreteness, uniformity, and flexibility. The Self programming system attempts to apply these attr…
Raymie Stata, John V. Guttag
Considerable progress has been made in understanding how to use subtyping in a way that facilitates modular reasoning. However, using subclassing in a way that facilitates modular reasoning is not well understood. Often methods must be overriden as a group because of dependencies…
David M. Ungar
In Self 4.0, people write programs by directly constructing webs of objects in a larger world of objects. But in order to save or share these programs, the objects must be moved to other worlds. However, a concrete, directly constructed program is incomplete, in particular missin…
Thomas P. Vajda
The pragmatic aspects of deploying large scale Object Oriented (OO) applications are examined. The focus is on identifying some of the main obstacles that arise in typical large scale OO projects, and offering hints about effective solutions. This The topics are based on a number…
Ole Agesen, David M. Ungar
Integrated, dynamically-typed object-oriented programming environments offer many advantages, but have trouble producing small, self-contained applications. Recent advances in type inference have made it possible to build an application extractor for Self. The extractor was able …
Eric Amiel, Olivier Gruber, Eric Simon
Optimizing method dispatch is a central issue in object-oriented language implementation. The dispatch table scheme, used for example by C++, is the only implementation of method dispatch that offers constant time performance. This property is the main asset of dispatch tables an…
Thomas Atwoode, Jnan Dash, Jacob Stein, Michael Stonebraker, Mary E. S. Loomis
No abstract available.
Bob Beck, Steve Hartley
This paper describes a new workflow model and its implementation in Smalltalk. The paper also details problems with using a RDBMS as the persistent store for the workflow tool and the subsequent experiences in using an ODBMS for this purpose. The final solution was a coexistence …
Phillip Bogle, Barbara Liskov
In many systems such as operating systems and databases it is important to run client code in a separate protection domain so that it cannot interfere with correct operation of the system. Clients communicate with the server by making cross domain calls, but these are expensive, …
Raymond J. A. Buhr, Ronald S. Casselman
Object-oriented design methods and notations do not adequately address the concerns of real-time-and-distributed (RTD) systems. Issues critical to such systems, like performance, robustness, and concurrency are not seriously considered until detailed design. We propose an object-…