2 comments

[ 3.6 ms ] story [ 17.1 ms ] thread
I remember when I first ran into this with Python classes, and had to learn how the Method Resolution Order worked. They use the C3 linearization algorithm to sole this problem (at least for Python 3 and new-style classes).

https://en.wikipedia.org/wiki/C3_linearization

I came across it since it is going to be implemented in c#, it's a c# future now though