sub fibonacci { die "..." unless defined $_[0]; my $n = shift; die "..." unless is_a_number($n); # the is_a_number function is to be defined die "..." if $n < 0; die "..." if $n != int $n; # ... }