LISP and Symbolic Computation, 4(3)187-205
SELF: The Power of Simplicity
David Ungar, Computer Systems Laboratory, Stanford University, Stanford, California 94305
Randall B. Smith, Xerox Palo Alto Research Center, Palo Alto, California 94304
|
Abstract: SELF is an object-oriented language for exploratory
programming based on a small number of simple and concrete ideas:
prototypes, slots, and behavior. Prototypes combine inheritance and
instantiation to provide a framework that is simpler and more flexible
than most object-oriented languages. Slots unite variables and
procedures into a single construct. This permits the inheritance
hierarchy to take over the function of lexical scoping in conventional
languages. Finally, because SELF does not distinguish state from
behavior, it narrows the gaps between ordinary objects, procedures,
and closures. SELF's simplicity and expressiveness offer new insights
into object-oriented computation.
|
This article is not available online.
|
|