When you don't cooperate with my selfish goal but instead have fun with your own elegant approach...
Please don't put words in my mouth.
I've used a lot of obscure and esoteric features of Perl. Some were for good reasons and some were for very bad reasons.
I've also spent five years writing tests, writing test modules, giving talks on how to test Perl, and writing books and articles on how to make Perl code more maintainable. It would be nice if people would take that into account before jerking their knees so hard they mistakenly hit enter before thinking about what I said.
The presence of idioms in Perl the language or in code written in Perl is not the problem.
The problem is in people using idioms badly, ineffectively, and antisocially.
Take P5NCI for example. There aren't a lot of people who can look at that code immediately and tell what's going on, or how it works. Yet also look at P5NCI::Declare and tell me that doesn't make a lot of maintenance problems related to XS and language bindings just go away. If the people who just wanted idioms and weird features and stuff they don't understand to go away had their way, I couldn't have written either module.
Remember, there are people on this site who don't understand hashes, let alone map or anonymous functions or closures. I don't expect them to maintain my code, not because I revel in complexity or have some ego complex about being the smartest programmer in the room. (Trust me; I know way too many other programmers to believe that.)
I don't expect them to maintain my code because they don't have any business maintaining my code without more experience and at least some guidance from another experienced programmer.
Now if, some day in the future, I find myself on a programming team where the team's guidelines are to avoid anonymous functions or closures, I won't necessarily like it, but I'll program that way (and I'll probably try to explain how they work to the rest of the team and get them back on the approved list).
I'm not giving up all of the great features of Perl that make me more productive and make my code more powerful, more concise, more expressive, and more maintainable just because someone, somewhere might not understand them. I'll write tests. I'll write documentation. I'll explain it over and over. Yet expecting people not to have to learn anything to maintain code is silly and wrong and a grave technical risk and I'll keep saying it until people listen.
Update: corrected module name