wtwolfe@hubcap.clemson.edu (Bill Wolfe) (03/15/90)
An interesting paper entitled "Object Specialization" appears in ACM Transactions on Information Systems, April 1989, pages 103-122; it combines the efficiency of class-based systems with the flexibility of prototype-based systems, and provides an elegant solution to the problem of "intersection classes" which eliminates the need for (and the desirability of) multiple inheritance. Additionally, it provides an elegant way to model different perspectives on (or implementations of) a single real-world entity -- for example, a person's address might differ depending on whether that person is viewed as a consumer (home address) or as a worker (business address). This paper has led me to modify my previous position that multiple inheritance should be incorporated into Ada 9X; single inheritance via specialization at the object level appears to be a fundamentally better solution, capable even of representing semantic constraints which cannot be represented by traditional class-based approaches. The power, flexibility, and efficiency of this new approach should be very seriously evaluated during the design of Ada 9X's improved support for the process of object-oriented software construction. Bill Wolfe, wtwolfe@hubcap.clemson.edu
sakkinen@tukki.jyu.fi (Markku Sakkinen) (03/15/90)
In article <8388@hubcap.clemson.edu> wtwolfe@hubcap.clemson.edu (Bill Wolfe) writes: > > An interesting paper entitled "Object Specialization" appears in > ACM Transactions on Information Systems, April 1989, pages 103-122; > ... > This paper has led me to modify my previous position that multiple > inheritance should be incorporated into Ada 9X; single inheritance > via specialization at the object level appears to be a fundamentally > better solution, [...] I agree that the paper (by Edward Sciore) is interesting, although not so easy to understand (I'll read it again when I have time). I am not quite as enthusiastic about Sciore's model as Wolfe is. For one thing, it is rather complicated, with _separate_ hierarchies for objects, classes, and templates. It also looks definitely less disciplined than conventional inheritance: new objects can be connected to a "superclass part" of an existing object without the original owner's knowledge or consent. One of Sciore's goals is the integration of classes and prototypes. Other, perhaps more promising approaches are e.g. in the recent work of Lynn Stein and others at Brown University. We are also developing some ideas at this corner of the world. It was useful to point out the reference in this newsgroup. I suppose the Transactions on _Information Systems_ is not the highest priority reading that most OOP people pick up from the weekly pile of journals. Read the paper and make up your own mind. Markku Sakkinen Department of Computer Science University of Jyvaskyla (a's with umlauts) Seminaarinkatu 15 SF-40100 Jyvaskyla (umlauts again) Finland SAKKINEN@FINJYU.bitnet (alternative network address)
billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe, 2847 ) (03/16/90)
From sakkinen@tukki.jyu.fi (Markku Sakkinen): > One of Sciore's goals is the integration of classes and prototypes. > Other, perhaps more promising approaches are e.g. in the recent work > of Lynn Stein and others at Brown University. We are also developing > some ideas at this corner of the world. How about some references? I'd really like to follow up on this, and hopefully other people would like to pursue it as well... Bill Wolfe, wtwolfe@hubcap.clemson.edu
jcg@iris.brown.edu (James Grandy) (03/16/90)
In article <8401@hubcap.clemson.edu> billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe, 2847 ) writes: > > From sakkinen@tukki.jyu.fi (Markku Sakkinen): > > One of Sciore's goals is the integration of classes and prototypes. > > Other, perhaps more promising approaches are e.g. in the recent work > > of Lynn Stein and others at Brown University. We are also developing > > some ideas at this corner of the world. > > How about some references? I'd really like to follow up on this, > and hopefully other people would like to pursue it as well... > > > Bill Wolfe, wtwolfe@hubcap.clemson.edu I have three relevant technical reports: "Towards a Unified Method of Sharing in Object-Oriented Programming", Lynn Andrea Stein, Brown University CS Dept. Technical Report No. CS-89-15, February 1988 (also published in Proc. Workshop on Inheritance Hierarchies in Programming Languages, Viareggio, Italy February 1989). "Hybrid: Implementing Classes with Prototypes", Anonio Mercado Jr., Brown University CS Dept. Technical Report No. CS-88-12. "Clovers: The Dynamic Behavior of Types and Instances," Lynn Andrea Stein and Stanley B. Zdonik, Brown University CS Dept Technical Report No. CS-89-42. Also, I would recommend "Towards Explicit Inheritance Schemes", Van Marcke, K., Proc. 21st Annual Hawaii International Conference on System Sciences, Hawaii 1988. This latter paper (not by a Brown person) contains some interesting and inspirational discussion of the need for more flexible behavior sharing schemes. The Brown papers address the same issues that Sciore's paper does (at least according to the description of it just mentioned). James Grandy (401) 862-1610 jcg@iris.brown.edu IRIS Brown University Box 1946, Providence, RI 02912
jcg@iris.brown.edu (James Grandy) (03/20/90)
I realize, having received three requests for more information, that my references to Brown University technical reports were incomplete. Should you wish to order them, mail your request to: Department of Computer Science Box 1910 Brown University Providence, RI 02912 Also, the Van Marcke paper reference was incomplete as well. The full reference is: "Towards Explicit Inheritance Schemes," Kris Van Marcke, Proceedings of the 21st Annual Hawaii International Conference on System Sciences, Volume II pp. 386-395. James Grandy (401) 862-1610 jcg@iris.brown.edu IRIS Brown University Box 1946, Providence, RI 02912