# --- Factoring with a nony mouse sub { my $sub; my $fact; $fact = 1; $sub = sub {my $num=shift; $fact=$num*$fact; if ($num==1){print "$fact\n"} else{$num--;$sub->($num)}; return $sub}; $sub->(5); }