Варианты:
1. Модуль.==file MyPkg.pm:
package MyPkg;
sub func1 {
return 'test';
}
==file myprog.pl:
require MyPkg;
print MyPkg::func();
2. Модуль с экпортом
==file MyPkg.pm:
package MyPkg;
BEGIN {
use Exporter ();
our ($VERSION, @EXPORT );
@EXPORT = qw(&func1);
}
sub func1 {
return 'test';
}
==file myprog.pl:
use MyPkg;
print func();
3. Модуль-объект
==file MyPkg.pm:
package MyPkg;
sub new {
my $self = { SOME_DATE => 'test' }
bless $self;
return $self;
}
sub func1 {
my $self = shift;
return $self->{SOME_DATA}
}
==file myprog.pl:
use MyPkg;
my $mpkg = MyPkg->new();
print $mpkg->func1();
рекомедуется к прочтению man perlmod, man perltoot