On Fri, 24 Oct 2008, Ovid wrote:
I didn't attach a patch for Moose::Util. I pasted it. That's because
you shouldn't apply it, but we (BBC) have to as a temporary fix until we
can understand exactly what's going on and how to better fix this.
Basically, the patch changes &Moose::Util::resolve_metaclass_alias to
actually use *our* metaclass name if it contains the string 'Pips3'.
This more than *doubles* the speed of our test suite. However, 'Pips3'
probably isn't terribly useful for most folks :)
If you are calling ->does on an attribute object a lot, it ends up calling
resolve_metaclass_alias a lot. t0m on IRC noticed this and added some
caching that speeds this up by a huge degree.
This will be in the Moose 0.60 release, which I expect to do some time
today.
In a future release, we may also add caching to $attr->does() when a class
is made immutable.
-dave
/*============================================================
http://VegGuide.org http://blog.urth.org
Your guide to all that's veg House Absolute(ly Pointless)
============================================================*/