[Python-Dev] Problems with the new super()

michele.simionato at gmail.com michele.simionato at gmail.com
Fri May 2 08:18:57 CEST 2008


On May 2, 7:54 am, Greg Ewing <greg.ew... at canterbury.ac.nz> wrote:
>
> I can only speak from my own experience, which is that
> whenever I've had a problem involving multiple inheritance,
> super() didn't solve it. What did solve it was either
> refactoring so that the classes being mixed were more
> independent, or finding another solution that didn't
> require multiple inheritance.
>
> Usually the new solution turned out to be better in
> other ways as well, so I've come to regard multiple
> inheritance issues as a code smell suggesting that
> I need to rethink something.

This is my experience as well. I have not found a real
life problem yet that I could not solve with single inheritance +
composition/delegation in a better and more maintainable way
than using multiple inheritance. Also, I have come to
believe that cooperative methods are a wart (it is too
difficult to reason about them, they are fragile, and
overall I see them as an unneeded complication in everyday
coding). But we are stuck with multiple inheritance now and
there is already a lot of code out there using it, so
in the present situation we have to cope with it and to make
it more usable, so I welcome the new super. I think that
it should be made a keyword tough (it is too magic now not to be one).

    Michele Simionato


More information about the Python-Dev mailing list