MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Using Prototypical Objects to Implement Shared Behavior in Object Oriented Systems (1986) [306 citations — 2 self]

by Henry Lieberman
Add To MetaCart

Abstract:

A traditional philosophical controversy between representing general concepts as abstract sets or classes and representing concepts as concrete prototypes is reflected in a controversy between two mechanisms for sharing behavior between objects in object oriented programming languages. Inheritance splits the object world into classes, which encode behavior shared among a group of instances, which represent individual members of these sets. The class/instance distinction is not needed if the alternative of using prototypes is adopted. A prototype represents the default behavior for a concept, and new objects can re-use part of the knowledge stored in the prototype by saying how the new object differs from the prototype. The prototype approach seems to hold some advantages for representing default knowledge, and incrementally and dynamically modifying concepts. Delegation is the mechanism for implementing this in object oriented languages. After checking its idiosyncratic behavior, an ob...

Citations

3 eds.], Artificial Intelligence, an MIT Perspective – Winston, Brown - 1979
2 Bobrow 85 – Reinhold - 1973
2 Borning 86] Alan Borning – Magazine, August - 1983
2 Lieberman 86a] Henry Lieberman. Concurrent Object Oriented Programming in Act 1 – Addison-Wesley - 1984
1 Goldberg, Robson 83] Adele Goldberg and David Robson. SmallTalk-80: The Language and its Implementation – ACMIEEE, Texas - 1986
1 Hewitt 79] Carl Hewitt. Viewing Control Structures as Patterns of Passing Messages – Addison-Wesley, MA - 1983
1 Lieberman and Hewitt 83] Henry Lieberman and Carl Hewitt. A Real Time Garbage Collector Based on the Lifetimes of Objects – AFCET, France - 1986