#!/usr/bin/perl use strict; use warnings; my @cmd = ( q{date}, q{perl -le 'print "Hello world!"'}, q{python -c 'print("Hello world!")'}, q{ruby -le 'print "Hello world!"'}, ); if (-f 'cfg/benchmark') { open my $cfg, '<', 'cfg/benchmark' or die "Could not open < cfg/benchmark: $!"; no strict; no warnings; eval do {local $/; <$cfg>}; die if $@; close $cfg; } my @res; for (1..3) { @res = (); for (reverse @cmd) { (my $q = $_) =~ s/'/'"'"'/g; push @res, "\$ time $_\n" . `bash -c 'time $q' 2>&1`; } } print join("\n", reverse @res);