Perl Subroutines
Defining and using subroutines (functions)
Basic Subroutine
sub greet { # define subroutine
print "Hello\n";
}
greet(); # call subroutine
Parameters
sub greet {
my ($name) = @_; # get parameter from @_
print "Hello, $name\n";
}
greet("John"); # pass argument
Multiple Parameters
sub add {
my ($a, $b) = @_; # unpack multiple params
return $a + $b; # return value
}
my $sum = add(5, 3);
Return Values
sub get_values { # return multiple values
return (1, 2, 3);
}
my ($x, $y, $z) = get_values(); # unpack return values
Default Parameters
sub greet {
my $name = shift @_ || "Guest"; # default value
print "Hello, $name\n";
}