On 5/8/05, ES <ruby-ml / magical-cat.org> wrote: > > Le 8/5/2005, "Hal Fulton" <hal9000 / hypermetrics.com> a ?crit: > > >Just expressing my opinion here. > > > >I don't like the term "idioclass" because "idio" doesn't > >remind me of "idiom" at all, and even if it did, it would > >be meaningless to me. > > > >I don't mind the term "singleton class." I'm used to it. > > > >If it must be changed, though, I question whether even the > >word "class" is appropriate. > > > >Consider the traditional meaning of "class" in OOP -- consider > >the *reason* that word was chosen. A "class" is a category. > >It is like a template that characterizes the members of that > >category -- in real life, we expect the "class" of Ford automobiles > >to have certain things in common, or there would be no reason to > >"class" them (or categorize them) together. > > > >But in that sense, a "singleton class" is not a class at all. > >It is just a "place" where we store information on unique methods > >and attributes and such. A class also has a "place" associated > >with it -- whether you think of it as a place in memory, or in > >the interpreter's code, or in the programmer's brain. > > > >But the class and the "place where the class's stuff is stored" > >are not really the same thing, are they? I submit they are not. > > > >I further submit that what we call a "singleton class" is a > >(or has a) "place" but isn't a class at all really; whereas a > >real class IS a class and also has a "place" to store its stuff. > > > >So we've been concentrating on changing the first word of the > >phrase "singleton class." Could we perhaps change the second > >word instead, making it a "singleton [whatsis]"? > > > >Is my thinking here of any value at all? > > Yes, excellent question! I was thinking about just giving it > a nonsense name since there really is no direct correspondence > to any existing, if you will excuse me, idiom. > > Could we call it #pouch? :) > > >Hal > > E > > -- > template<typename duck> > void quack(duck& d) { d.quack(); } > > Well this is a little long but how about "singleton method table"? (or "solo method table" or "idio_method_table or "pouch method table" ? ;) )