[Python-Dev] C3 implementation

Samuele Pedroni pedronis@bluewin.ch
Sun, 6 Oct 2002 21:02:05 +0200


I have an apparently working implementation of C3 in C.

test_descr/test_descrtut pass apart some tests that involves hierarchies with
MRO order disagreements. In such cases my impl raise TypeError: MRO order
disagreement exceptions.

Some of them it's clear to me how to fix them myself, for others someone should
think about what was the original intention of the test.

I can add some tests about monotonicity etc, with examples from the paper and
the discussion we had here.

Should I submit this as  a patch on SF? at least is a start.

PS:
1. the implementation is worst-case quadratic in the total length of the
superclasses' mros, like the Python one I have presented here or the one used
in Goo. I don't think this has relevance in practice, it's a trade-off versus
even more complicated logic and data structure usage.