Otra forma de llamar una subrutina es usar & pero sin lista de argumentos.
En tal caso, los contenidos actuales del array especial @_ se pasan
como argumentos a la subrutina.
Ejemplo:
sub checked_inverse {
die "can't invert 0" if $_[0] == 0;
my $inv = &inverse; # llama a &inverse con los argumentos actuales
die "inversion failed" unless $inv*$_[0] == 1;
return $inv;
}
Observe que esto significa que hay una importante diferencia entre:
&checked_inverse # significa checked_inverse(@_);y
checked_inverse; # significa checked_inverse();
Casiano Rodríguez León
