[Python-Dev] Things to Know About Super (original) (raw)

Michele Simionato michele.simionato at gmail.com
Wed Aug 27 03:16:04 CEST 2008


On Tue, Aug 26, 2008 at 8:56 PM, Raymond Hettinger <python at rcn.com> wrote:

I would state this differently: "The use cases for cooperative multiple inheritence don't arise often in practice; so, if we dropped support for those cases, you probably wouldn't notice until you encountered one of the rare occasions where it was the right answer to your problem."

There was some quote floating around that expressed the situation well -- it went something like: "Python makes most problems easy and hard problems possible". The use cases for cooperative multiple inheritance fall in the latter category.

It is just a matter of how rare the use cases really are. Cooperative methods has been introduced 6+ years ago. In all this time surely they must have been used. How many compelling uses of cooperation we can find in real life code? For instance in the standard library or in some well known framework? This is a serious question I have been wanting to ask for years. I am sure people here can find some example, so just give me a pointer and we will see.

BTW, I really like your paper explaining the MRO. Excellent work.

The issue with that paper is that I wrote it when my Python experience was reduced to six month and my experience with real life large object oriented frameworks was zero. Nowadays I value simplicity more.



More information about the Python-Dev mailing list