<div dir="ltr">On Sun, May 24, 2015 at 6:11 AM, Steven D'Aprano <span dir="ltr"><<a href="mailto:steve@pearwood.info" target="_blank">steve@pearwood.info</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Sun, 24 May 2015 11:53 am, Dr. John Q. Hacker wrote:<br>
</span>But, frankly, what you describe is more likely to be a weakness of multiple<br>
inheritance and mixins, one which should be avoided. One attempt to avoid<br>
this problem is with traits, an alternative to mixins which explicitly<br>
deals with the problem of mixin conflicts.<br>
<br>
<a href="http://www.artima.com/weblogs/viewpost.jsp?thread=246488" rel="noreferrer" target="_blank">http://www.artima.com/weblogs/viewpost.jsp?thread=246488</a><br>
<span class=""></span></blockquote><div> <br></div><div>Interesting.  This brings up an issue another poster brought up:  In my usage of the term "parent", I use it to mean the class that is a product of object composition:<br><br></div><div>class Parent(child1, child2):  pass<br><br></div><div>I figure that it is this "Parent" class which must manage the methods that it is inheriting with child1 and child2 -- mixins or otherwise.  In this usage, super() should be called "delegate" as whatever I don't accomplish in my specialized Parent class, I will get the child classes to do.  Python automagically delegates any methods that I don't define in Parent to methods found in child1 and child2.<br><br></div><div>It seems the issues that everyone encounters with multiple inheritance, mixins, and such has more to do with terminology (and proper implementation) than in actuality.<br><br></div><div>zipher<br></div><div><br></div><div><br></div><div><br></div></div></div></div>