Path: utzoo!attcan!telly!lethe!torsqnt!jarvis.csri.toronto.edu!mailrus!ames!uhccux!munnari.oz.au!cs.mu.oz.au!ok From: ok@cs.mu.oz.au (Richard O'Keefe) Newsgroups: comp.lang.c++ Subject: Re: OO terminology (Was: OO Design books) Keywords: OOP, books Message-ID: <2166@munnari.oz.au> Date: 22 Sep 89 12:44:13 GMT References: <583@calmasd.Prime.COM> <4557@orca.WV.TEK.COM> <1333@tukki.jyu.fi> <1989Sep21.185448.13515@oresoft.uu.net> Sender: news@cs.mu.oz.au Lines: 17 In article <1989Sep21.185448.13515@oresoft.uu.net>, dan@oresoft.uu.net (Daniel Elbaum) writes: > 'super-' and 'sub-' class terminology can introduce confusion. > If X is a a base class of Y, then a Y is an X but not vice-versa, > and so X is the more general of the two. Which is to say that the set of Xs is a SUPERset of the set of Ys. Which is to say that "X is a superclass of Y" goes in exactly the right direction. > On the other hand, Y is a superset of X; No, the set of Ys is a *SUB*set of the set of Xs. > The 'base' and 'derived' terms are unambiguous and adequate. In C++ this may well be so. In general, it is possible to derive more general structures from more specific ones by ``forgetting'' unwanted parts, so in other languages ``derived'' may not be so suggestive. And the context was terminology *across* languages.