package MyModule; use strict; use warnings; my $Dump; if (eval { require Data::Dump; 1}) { $Dump = sub { goto &Data::Dump::dd }; } else { require Data::Dumper; $Dump = sub { goto &Data::Dumper::Dumper }; } print "this is %INC:\n"; print $Dump->(\%INC); __END__