in reply to Re^3: Eliminating "used only once" warnings from List::Util::reduce
in thread Eliminating "used only once" warnings from List::Util::reduce
Yes, that's the problem with simple fixes. I actually thought of something similar to the BEGIN{ $main::a... trick and submitted it months ago for List::MoreUtils::pairwise, where it was eventually pointed out (as I should have realized myself) that it would only work for the first invocant of use Modulename.
On the other hand, import does have caller context. So a fix could be applied within import. But as I mentioned in another post in this thread, that wouldn't solve times where the user skips import with "use List::Util ();, and then fully-qualifies List::Util::reduce in his code.
So, this can be mostly fixed by overriding import. But probably instead should be fixed within the Perl interpreter so as to special-case $a and $b further. They already have special case treatment for strict vars. One step further isn't going to suddenly allow a bunch of "only once" bugs to slip through people's code.
Dave
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^5: Eliminating "used only once" warnings from List::Util::reduce
by BrowserUk (Patriarch) on Jul 30, 2013 at 19:33 UTC |