in reply to recursive anonymous subroutines
In Perl 6 you will be able to do this:
sub ($x) { return unless $x > 0; $x.say; &SUB.($x - 1); } [download]