On Fri, Mar 29, 2013 at 2:58 PM, Chris Weyl <cw...@alumni.drew.edu> wrote: > > I'm still not seeing any compelling reason to drop excludes/alias. Am I > missing something here, like is the existence of alias/excludes in core > blocking Some Thing Good, or encouraging Very Bad Behaviour?
The latter actually. Excludes specifically (silently) encourages people to break the contract nature (allomorphism?) of Roles. That is you can suddenly no longer have an API that the Role claims you *should* have because you excluded the method on composition. Additionally the excludes/alias feature *only* exists for Roles in the core. So the place we are in now is we have extra code for an inconsistent feature that can encourage bad behavior. I can see validity to the argument that this feature could be cut and replaced with either referring people like yourself to MooseX::Aliases ... or simply core-ing MX::Aliases and making the alias feature more consistent and useful. Note we haven't *actually* cut anything yet. All of this is about potentially deprecating and cutting them in the future. So possibly this discussion is pre-mature too. -Chris