CodeToLive

Perl Subroutines

Basic Subroutine


sub greet {
    my ($name) = @_;
    return "Hello, $name!";
}

print greet("Alice"), "\n";
      

Variable Arguments


sub sum {
    my $total = 0;
    $total += $_ for @_;
    return $total;
}

print sum(1, 2, 3), "\n";  # 6
      

Prototypes


sub add($$) {
    my ($x, $y) = @_;
    return $x + $y;
}

print add(2, 3), "\n";  # 5
      

Anonymous Subroutines


my $greet = sub {
    my $name = shift;
    return "Hi, $name!";
};

print $greet->("Bob"), "\n";
      
Back to Tutorials