require Exporter; @ISA = qw(Exporter); @EXPORT =qw\fun1 fun2\; @EXPORT_OK = qw\fun3\; @EXPORT_FAIL= qw\fun4\; sub fun1{print "\nfun1 in package " . __PACKAGE__ } sub fun2{print "\nfun2 in package " . __PACKAGE__ } sub fun3{print "\nfun3 in package " . __PACKAGE__ } sub fun4{print "\nfun4 in package " . __PACKAGE__ } #### use Module; fun1; fun2; fun3; fun4; #### fun1 in package main fun2 in package main fun3 in package main fun4 in package main #### package Module; require Exporter; @ISA = qw(Exporter); ... #### fun1 in package Module fun2 in package Module