[Python-Dev] Re: my proposals about mros (was: perplexed by mro)

Guido van Rossum guido@python.org
Fri, 04 Oct 2002 15:31:13 -0400


> > I'll have to read the paper describing C3:
> >
> > http://www.webcom.com/haahr/dylan/linearization-oopsla96.html
> >
> >but I expect I'll have to agree.  Thanks for your help!

I've read this now and I agree: we should adopt C3.  I *think* that
the current MRO algo is the same as the algorithm called C*[LOOPS] in
that paper; for all cases where they show how C*[LOOPS] differs from
Dylan or from C3, Python gives the same result as C*[LOOPS].

I wish I could find a clue in the Metaclasses book, but it's hard to
search a 300-page book for an occurrence of reference [7]. :-)

BTW for people coming late to this discussion, please read up on MRO
(Method Resolution Order) first here:

  http://www.python.org/2.2.1/descrintro.html

--Guido van Rossum (home page: http://www.python.org/~guido/)