#! perl use strict; use warnings; use Benchmark qw( cmpthese ); my $n = 1e4; cmpthese ( 100, { foreach_loop => \&foreach_loop, c_for_loop => \&c_for_loop, } ); sub foreach_loop { for my $i (-$n .. 0) { print -$i; } } sub c_for_loop { for (my $j = $n; $j >= 0; --$j) { print $j; } }