#!/usr/bin/perl use warnings; use strict; use Lingua::EN::Numbers::Ordinate; my @past_gifts; my $day = 0; for my $todays_gift ( ) { chomp $todays_gift; my $dayword = ordinate(++$day); print join( "\n", "On the $dayword of Christmas", "My true Perl gave to me", $todays_gift, @past_gifts, ("") x 2, ); unshift( @past_gifts, @past_gifts ? $todays_gift : "And $todays_gift" ); } __DATA__ a commandline in an @ARGV 2 sca-lars 3 ar-rays 4 nested hash 5 ENCODED STRINGS 6 threads-a-spawning 7 procs-a-forking 8 tests succeeding 9 modules loading 10 objects blessing 11 signals catching 12 saints-a-drinking