I would assume that all classes automatically define:
multi submethod *infix:<as> ($self: $?CLASS) { $self }
so that derived classes can automatically:
$obj.as<ancestor>
Without actually changing their implementation details (only the type
that Perl currently thinks it's dealing with polymorphically).
In fact, I would expect that this bit of behind-the-curtain magic is how
the MCP arranges for polymorphism when you:
sub foo(Object $x) {...}
my A $y;
foo($y);
Is all of that fair?
--
Aaron Sherman <[EMAIL PROTECTED]>
Senior Systems Engineer and Toolsmith
"We had some good machines, but they don't work no more." -Shriekback