Re: Announcement: Moose 2.0800 is released!
[email protected] (Lars Balker)
| Newsgroups | perl.moose |
|---|---|
| Message-ID | <CAB-_BaSwGAyHkPkLCorn+ogwUbnuM20Vy-NPNAG=8xjHieYp6g@mail.gmail.com> |
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