* Damian Conway <[EMAIL PROTECTED]> [06/25/2001 13:20]:
>
> But one could also imagine that Perl 6 might allow individual objects to
> have an C<ISA> property that pre-empted their class's C<@ISA> array.
At some point, it is probably worth talking about Perl's ALLCAPS subs
for special methods. For example, if we're taking the 3-tiered
method/value/prop hierarchy, then maybe DESTROY and PUSH don't make
sense any more? It seems that it would behoove us to make all this stuff
fit into one framework.
There are a couple alternatives I can think of:
1. Make them all lowercase. They just happen to conflict
with names you may like. Hmmmmm. Backwards compat, anyone?
2. Make them like Python, with __underscoresgalore__. Doesn't
really solve the problem, though.
3. Give them a special attribute, like
sub push ($proto, @type) : handler { }
sub barks ($dog) : property { }
But what to do with similarly-named subs? Have a priority
hierarchy?
4. Let the user name them whatever they want:
use tie push => myPushHandler,
pop => myPopHandler;
use handler create => I_Live;
The problem with leaving them ALLCAPS is if you have:
push @a, $element;
And we do a more extensible tie framework, and you have an @a.push
method already, there's a collision there.
-Nate