I just spend twenty minutes or so on this nonsense.
A number of our objects get decorated by Mixin::ExtraFields::Hive, which lets us say:
$object->hive->some->random->path->to->datum->SET(1);
It's a nice convenient way to store arbitrary hierarchical data about stuff.
I was trying to store the "moniker" of the test object being stored:
$object->hive->test->moniker->SET($moniker);
This kept failing, saying I couldn't call "SET" on "hive." What?
Well, UNIVERSAL::moniker was getting in the way. Argh! I hate UNIVERSAL. I will never abuse it outside of Acme again.
I agree (Score:1)
Re: (Score:1)
People complain a lot about monkeypatching Object in other languages, but I feel like you're right: a lot of people who see the evil of that seem to let UNIVERSAL methods go.
rjbs