use strict; use warnings; my @lines; @ARGV = reverse @ARGV; foreach ( @ARGV ) { my( @slurp ) = <>; push @lines, reverse @slurp; } print foreach @lines;