On Mon, Aug 21, 2006 at 11:25:26PM -0500, Mark Stosberg wrote: > In S12, we see a number examples of: > > class Dog is Mammal > http://dev.perl.org/perl6/doc/design/syn/S12.html > > However, it's not clear if it is necessary to preload Mammal for Dog > to function properly here, or what that syntax would be.
I've been under the impression that Mammal wouldn't have to be preloaded, but it would have to be sufficiently defined before the end of compilation. Whether that comes in the form of C<use Mammal> or some other construct, I don't know. As far as C<is Mammal> autoloading, right now, I'm of the opinion that the programmer should be explicit about loading the code that defines Mammal but I don't have a strong argument for that position. But, assuming for the moment that C<is Mammal> autoloads C<Mammal.pm>, does that mean that class Dog is Mammal-4.5 is valid? This seems like something we shouldn't encourage as it tends toward tight coupling of implementations where it should be tight coupling of abstractions. I don't know ... someone argue my brain into a new position :-) -Scott -- Jonathan Scott Duff [EMAIL PROTECTED]