[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Class Precedence List
- To: RPG@SAIL.STANFORD.EDU
- Subject: Re: Class Precedence List
- From: Danny Bobrow <Bobrow.pa@Xerox.COM>
- Date: 5 Jan 87 09:46 PST
- Cc: common-lisp-object-system@SAIL.STANFORD.EDU
- In-reply-to: Dick Gabriel <RPG@SAIL.STANFORD.EDU>'s message of 02 Jan 87 22:31 PST
- Sender: Bobrow.pa@Xerox.COM
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.
danny