John Porter writes:
: Peter Scott wrote:
: > Even if it has a 
: > fixed-length prototype, is Perl smart enough to know that it can't be 
: > called as an object method, bypassing prototype checking?
: 
: Maybe p6 won't have that loophole.

It won't, if the type of the object can be determined at compile time.
If you declare C<my Dog $spot>, it'll be assumed you're calling methods
that are consistent with the declarations in the Dog interface, even
if it happens to be a Poodle or a Chihauhau.

I hope that named argument notation of some sort will prevent this from
being a burden on subclasses that wish to extend methods of base
classes that weren't defined to be sufficiently extensible in the first
place.  But I could be wrong...

Larry

Reply via email to