MyMooseModule->has(thing => ( ... ));
as a way to dynamically extend a class at runtime, instead of just (correctly) using the MOP
MyMooseModule->meta->add_attribute(thing => ( ... ));
I suspect to some degree it is because people are too used to the older perl OO frameworks like Class::Accessor which forced you to inherit from itself and therefore made things like $some_object->mk_accessor('foo') possible, even though that is evil and wrong ;)
|