#!/usr/bin/perl use strict; use warnings; use Benchmark; timethese -10, { C => 'my $sum; for (my $i = 0; $i < 1000000; $i += 2) {$sum += $i}', AWK => 'my $sum; for my $i (map {$_ * 2} 0 .. 1000000 / 2) {$sum += $i}' }; __END__ Benchmark: running C, AWK for at least 10 CPU seconds... C: 10 wallclock secs (10.66 usr + 0.00 sys = 10.66 CPU) @ 1.41/s (n=15) AWK: 10 wallclock secs (10.08 usr + 0.00 sys = 10.08 CPU) @ 0.69/s (n=7)