Hi all,

I posted this to Perl6 users, but I was Warnocked, it was the wrong list, or 
both.  Here's another stab at it.

In doing a bit of work with traits (roles) in Perl 5 
(http://perlmonks.org/?node_id=577477), I've realized some edge cases which 
could be problematic.

First, when a role is applied to a class at runtime, a instance of that class 
in another scope may specifically *not* want that role.  Is there a way of 
restricting a role to a particular lexical scope short of applying that role to 
instances instead of classes?

Second, how can I remove roles from classes?  I've create some code which adds 
an "is_selected" method to some classes but when I'm done, I'd like top easily 
remove that role.  How do I do that?  Seems closely related to my first 
question, but it's still a distinct issue, I think.

Third, http://dev.perl.org/perl6/doc/design/syn/S12.html says:

  You can also mixin a precomposed set of roles:

    $fido does Sentry | Tricks | TailChasing | Scratch;

Should that be the following?

    $fido does Sentry & Tricks & TailChasing & Scratch;

Cheers,
Ovid 
-- 
Buy the book -- http://www.oreilly.com/catalog/perlhks/
Perl and CGI -- http://users.easystreet.com/ovid/cgi_course/

Reply via email to