On Fri, Mar 29, 2013 at 4:04 PM, Ovid <curtis_ovid_...@yahoo.com> wrote:
>>>  >   with 'R::Programmer';
>>>  >   with 'R::Clerk';

> I think you may have misread the code. He composed them separately because if 
> he composed them at the same time, he would get a conflict:
>
>     Due to a method name conflict in roles 'R::Clerk' and 'R::Programmer',
>     the method 'pay_rate' must be implemented or excluded by 'R::Employee' at 
> ...
>
> Thus, in this instance, he was forced to compose those roles separately 
> (since "exclude" is going to be taken away) and lose compositional safety.

I had a choice between the above and

   with 'R::Programmer', 'R::Clerk';
   sub pay_rate { "nonsensical return value, because the modelling is weird" }

Both work, both are nasty.
-- 
Lars Balker                                                  Consult::Perl

Reply via email to