What is the semantics meaning of 'object'?
Roy Smith
roy at panix.com
Sun Jun 23 21:38:33 EDT 2013
In article <51c7a087$0$29999$c3e8da3$5496439d at news.astraweb.com>,
Steven D'Aprano <steve+comp.lang.python at pearwood.info> wrote:
> On Sun, 23 Jun 2013 15:24:14 -0400, Roy Smith wrote:
>
> > In article <51c74373$0$29999$c3e8da3$5496439d at news.astraweb.com>,
> > Steven D'Aprano <steve+comp.lang.python at pearwood.info> wrote:
>
> >> What else would you call a function that does lookups on the current
> >> object's superclasses?
> >
> > Well, mro_lookup() would have been a better choice. Super() has an
> > obvious meaning, which just happens to be wrong.
>
> This "obvious but wrong" meaning isn't the least bit obvious to me. Care
> to give me a hint? The only thing I can think of is:
>
> - if you are familiar with single inheritance;
True.
> - but unfamiliar with multiple inheritance;
False. Although, I'm pretty sure that all the times I've used MI (in
both Python and C++), it was of the mix-in variety.
> - then you might assume that super means "return the superclass of this
> class" (or possibly instance).
That's exactly what I assumed. And, since you correctly surmised that
that's what I would assume, I would suggest that it was pretty obvious
to you too. Of course, given that assumption, it was not at all clear
what it would do in a class with multiple ancestors.
> I don't think that counts as "obvious". Or at least not "intuitive" :-)
Obvious is in the mind of the observer.
More information about the Python-list
mailing list