So during the usual discussions on #catalyst last night, we came to the following paraphrased topic:
other: mango using Moose?
me: no, but I do have a meta()
other: oh god. don't do that. please.
me: why? my modules, not using moose, meta is fair game. it's just a method.
other: the sky is falling. kittens will die of you do that.
Now, I understand the sentiment. Moose is the hot new thing. And it puts its object meta information in meta(). But hey, that's where I put my object meta information too. So does RDBO. So do other modules. Just telling people to never use a method called meta() is silly in some respects.
If the two need to merge in the future, I surmise that:
use metaclass 'MySpecialMetaClass';
is my friend.
Moose tries to play well (Score:1)
I agree, no module has specific domain over
&meta, I am not sure why "other" got so upset.I dont know about the other
&metaout there, but with Moose we try to always make sure we don't step on other modules toes. And in many cases we avoid calling->metaand instead fetch the metaclass from the Class::MOP cache in a more direct fashion.In fact, Class::MOP (the metaclass system Moose is built on) never insists on
&metaand always fetches the metaclass from the cache.- Stevan
use metaclass is not your friend (Score:1)
This will not work as you think, metaclass.pm installs it as :)
- Stevan&metatoo (just like Moose). But we can talk more about the best solution when you get thereMe too (Score:1)
But as I look at moving parts of it to CPAN, I most likely would be using ->meta as well.