[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Class Precedence List

    I think this is simpler because many people know topological
    sort already, they can understand the partial order in terms of
    these simple pairs, and the topological sort algorithm can be
    explained in a paragraph. People can also easily see where the
    non-determinism comes in if there are several total orders. (Note
    that most people would know the algorithm after  reading the
    specification of the partial order as those pairs and seeing the
    phrase ``now topologically sort.'')

I don't believe that this is clearer than the explanation Gregor and I
gave, which in about the same amount of code used by RPG, computes the
data structure, computes the preferred (preorder walk) topological sort,
and provides appropriate error messages.  

Since the usual case with multiple inheritance of independent mixins
(the usual way to use them) is that multiple sorts are possbile, it
seems inappropriate to warn the user of such a case.  But perhaps the
best way to describe things would be to take my last message on the
subject, and append the topological sort explanation for those who
prefer things that way.