$ cat t.pl #!/usr/bin/perl use strict; use warnings; my $n = <>; print "Direct translation\n"; for (my $i=$n; $i > 0; $i--) { for (my $j=0; $j < $i; $j++) { print "*"; } print "\n"; } #### print "A bit more perlish: convert C-style for loops\n" . "into perl style for loops\n"; for my $i (reverse 1 .. $n) { for my $j (0 .. $i) { print "*"; } print "\n"; } #### print "Yet more perlishiosness: use the for statement modifier\n"; for my $i (reverse 1 .. $n) { print "*" for 0 .. $i;; print "\n"; } #### print "Not enough perlbell: use 'x' operator for inner loop\n"; for my $i (reverse 1 .. $n) { print "*" x $i, "\n"; } #### print "Jumping the shark: adding some per(i)lousness\n"; print map { "*" x $_, "\n" } reverse 1 .. $n;