Hi, Moose-ers I have a couple of proposals from Goro Fuji to boost Moose's load time. I realize this is another one of those "why do you care, once moose is loaded it's fast" type of things, but I figure we should do everything we can to squash arguments against moose.
So here goes: the proposals I got are as follows: 1. Class::MOP's meta class (the stuff for meta circularity) is rarely used. However, when we make these classes immutable, it uses about 30% of the load time. Since they we don't know if we need this stuff immediately, We could load some or all of this lazily, reducing overall load time. We estimate that this will cut down about 15% of the load time 2. get_method_map seems to be taking about 10% of the over all load time. Since it does a symbol lookup when called, this speed is understandable. However, it's being called from add_method() as well. When you add_method(), it's obviously going to cancel the method map cache, so you should not need to even check the symbol table. This is a one line change that improves load time by about 5%+ Do these sound reasonable? If so, I would like the original presenter of these ideas to work on this on behalf of Japan Perl Association. This will help him pay for the coming YAPC::Asia Tokyo 2009. Regards, --d