* 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

Reply via email to