On Fri, Mar 29, 2013 at 4:04 PM, Ovid <[email protected]> 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