BEGIN {
for my $name (qw {slurp get}) {
eval<<"TILL_HERE";
sub $name {
print("This is $name\n");
}
TILL_HERE
}
}
slurp;
get;
__END__
This is slurp
This is get
####
sub slurp;
sub get;
sub AUTOLOAD {
my ($func) = $main::AUTOLOAD =~ /.*::(.*)/;
if ($func eq "slurp" || $func eq "get") {
print("This is $func\n");
}
}
slurp;
get;
__END__
This is slurp
This is get
####
sub common {
my ($name, @args) = @_;
print("This is $name\n");
}
sub slurp {common("slurp", @_)}
sub get {common("get", @_)}
slurp;
get;
__END__
This is slurp
This is get