use My::Tools; # turns strict on # turns warnings on # makes all my usual imports available #### package My::Tools; use base 'ToolSet'; # handles the import() ToolSet->set_strict(1); ToolSet->set_warnings(1); ToolSet->export( 'Carp' => undef, # all the Carp defaults 'Scalar::Util' => 'refaddr blessed weaken', 'List::Util' => 'first reduce' ); 1; # return true #### use My::Tools; $var = 1; # causes a compile error because we're using strict #### # simple example of strict contagion sub import { require strict; strict->import; }