On Jul 18, 2005, at 3:21 PM, Larry Wall wrote:
On Mon, Jul 18, 2005 at 02:54:40PM -0400, Stevan Little wrote:
: Ok, I will un-warnock myself here :)
Sorry, I've been occupied by various time-consuming family obligations.
My own fault, I asked on the weekend. People *should* spend time with
family on the weekends.
: And after some discussion on #perl6 I decided to make 'C3' the
: algorithm of choice for the :ascendant ordering, and also to make
: :ascendant the :canonical ordering (since it makes MI sane, I mean
: could you go wrong).
: Of course all this can change if @Larry decides differently :)
It has been a long-standing desire of $Larry to head that direction,
so unless any(@Larry) complain, that seems fine.
I guess I only
wonder whether that will make it harder to view SMD as a constrained
subset of MMD since it might be construed as forcing a different
distance metric. But maybe preserving SMD ordering as a subset of
MMD shouldn't be a major concern, since it's one of those things that
makes more difference in the weird cases than in the usual ones,
and since Perl 6 is providing explicit call differentiation of SMD
vs MMD for anything above one argument.
I think that creating a class ordering via C3 is a good idea before
diving into MMD dispatching. If people are going to be able to
logically reason about their classes, then there needs to be some basic
rules, and class ordering I think should be one of them. It should not
diminish the power of MMD really, since it will still be possible to
search the entire class ordering, gathering up all possible canidates,
before choosing the best one. In fact, it might make MMD easier if we
give class ordering some weight in the descision.
However, I really know nothing about MMD, so I am just talking crazy on
3 1/2 hours of sleep :)
Thanks much for the reply,