2,246 papers · page 112 of 113
Oaklisp: an Object-Oriented Scheme with First Class Types
The Scheme papers demonstrated that lisp could be made simpler and more expressive by elevating functions to the level of first class objects. Oaklisp shows that a message based language can derive similar benefits from having first class types.
Swamp: A Fast Processor for Smalltalk-80
A processor for the Smalltalk-80↑ programming language is described. This machine is implemented using a standard bit slice ALU and sequencer, TTL MSI, and NMOS LSI RAMS. It executes an instruction set similar to the Smalltalk-80 virtual machine instruction set. The data paths of…
Using Prototypical Objects to Implement Shared Behavior in Object Oriented Systems
Development of an Object-Oriented DBMS
We describe the results of developing the GemStone object-oriented database server, which supports a model of objects similar to that of Smalltalk-80. We begin with a summary of the goals and requirements for the system: an extensible data model that captures behavioral semantics…
Boolean Classes
We extend the notion of class so that any Boolean combinations of classes is also a class. Boolean classes allow greater precision and conciseness in naming the class of objects governed a particular method. A class can be viewed as a predicate which is either true or false of an…
Genericity versus Inheritance
Genericity, as in Ada or ML, and inheritance, as in object-oriented languages, are two alternative techniques for ensuring better extendibility, reusability, and compatibility of software components.This article is a comparative analysis of these two methods.It studies their simi…
Intermedia: The Architecture and Construction of an Object-Oriented Hypermedia System and Applications Framework
This article presents a case study of the development of the Intermedia system, a large, object-oriented hypermedia system and associated applications development framework providing sophisticated document linkages. First it presents the educational and technological objectives u…
The Application Accelerator Illustration System
Virtual Copies - At the Boundary Between Classes and Instances
Knowledge bases built in object-oriented systems use networks of interconnected objects in their representations. The mechanism described here provides a way to use such a network as a prototype by making virtual copies of it. The virtual copy is created incrementally. Values of …
Object-Oriented Programming with Flavors
This paper describes Symbolics' newly redesigned object-oriented programming system, Flavors. Flavors encourages program modularity, eases the development of large, complex programs, and provides high efficiency at run time. Flavors is integrated into Lisp and the Symbolics progr…
The Learnability of Object-Oriented Programming Systems - Panel
Augmentation of Object-Oriented Programming by Concepts of Abstract Data Type Theory: The ModPascal Experience
Object-oriented programming and abstract data type (ADT) theory have emerged from the same origin of computer science: the inability to deal efficiently with 'programming in the large' during the early seventies. Each of the approaches has led to significant practical and theoret…
Encapsulators: A New Software Paradigm in Smalltalk-80
Certain situations arise in programming that lead to multiply polymorphic expressions, that is, expressions in which several terms may each be of variable type. In such situations, conventional object-oriented programming practice breaks down, leading to code which is not properl…
Object Oriented Spreadsheets: The Analytic Spreadsheet Package
The ASP package, a spreadsheet implemented in Smalltalk-80, is discussed. A description of the unique data manipulation features of ASP is given. A discussion of how these features arise from the Smalltalk-80 environment is included, with emphasis on features not common to all ob…
SOAR: Smalltalk Without Bytecodes
We have implemented Smalltalk-80 on an instruction-level simulator for a RISC microcomputer called SOAR. Measurements suggest that even a conventional computer can provide high performance for Smalltalk-80 by abandoning the 'Smalltalk Virtual Machine' in favor of compiling Smallt…
An Alternative to Subclassing
Smalltalk-80 obtains some of its expressive power from arranging classes in a hierarchy. Inheritance is an important aspect of this hierarchy. An alternative organization of classes is proposed that emphasizes description instead of inheritance. This alternative can be used with …
An Introduction to Trellis/Owl
The Management of Changing Types in an Object-Oriented Database
We examine the problem of type evolution in an objectoriented database environment.Type definitions are persistent objects in the database and as such may be modified and shared.The effeets of changing a type extend to objects of the type and to programs that use objeets of the t…
Impulse-86: A Substrate for Object-Oriented Interface Design
Impulse-86 provides a general and extensible substrate upon which to construct a wide variety of interactive user interfaces for developing, maintaining, and using knowledge-based systems. The system is based on five major building blocks: Editor, Editor Window, PropertyDisplay, …