use strict; use warnings; use Benchmark q{cmpthese}; my $nullFile = q{/dev/null}; open my $nullFH, q{>}, $nullFile or die qq{open: $nullFile: $!\n}; my $rcConcat = sub { print $nullFH q{a} . q{!} x 5 for 1 .. 10000; }; my $rcList = sub { print $nullFH q{a}, q{!} x 5 for 1 .. 10000; }; cmpthese (-3, { Concat => $rcConcat, List => $rcList, }); close $nullFH or die qq{close: $nullFile: $!\n};