Home

Previous Entry | Next Entry

About a Moose, and Class::MOP review

  • Jun. 21st, 2006 at 8:49 AM
marcus me, pixel me tech, me in B&W
I've recently been working with Moose, Stevan Little's "I can't believe it's not perl6 OOP' module. In the end, we decided to wait with it in Catalyst until 5.8, because of difficulty in remaining backwards compatibility with Class::Accessor, Class::Data::Inheritable and friends. It's a pity, as I'm really looking forward to get rid of some of these, due to their unfriendly approach to perl error reporting. (No, die inside the constructor is not a good approach to telling the user he passed the wrong kind of arguments.)

Still, I am very impressed with what the module can do, and the maturity of the implementation, and have already been using it outside of the Catalyst project. The reason I feel  confident using Moose as a OOP system is that it's based on a  mature meta object system, Class::MOP. If you want to know more about it, Chromatic of perl.com has written a nice review of Class::MOP here.