I think it is wrong to change the meaning of
use base ... for your module. If the behavior of
use base is not what you expect, put a note into the docs of your module. That does not confuse users that expect, that
use base does not influence the callers namespace.
The docs for
use base say
Roughly similar in effect to
package Baz;
BEGIN {
require Foo;
require Bar;
push @ISA, qw(Foo Bar);
}
so no import! Then I expect no import.