#! /usr/bin/perl -w use strict; use Benchmark; use ArrayBase; use ArraySub; use HashBase; use HashSub; my $hbase; my $hsub; my $abase; my $asub; my $val; timethese 100000 => { 'a_b_new' => '$abase = ArrayBase->new(42)', 'a_s_new' => '$asub = ArraySub->new(42)', 'a_b_stor' => '$abase->second(10)', 'a_b_retr' => '$val = $abase->first', 'a_s_stor' => '$asub->third(1999)', 'a_s_retr' => '$val = $asub->third', 'a_s_sup' => '$asub->second(20)', 'a_s_rup' => '$val = $asub->second', 'h_b_new' => '$hbase = HashBase->new(42)', 'h_s_new' => '$hsub = HashSub->new(42)', 'h_b_stor' => '$hbase->second(10)', 'h_b_retr' => '$val = $hbase->first', 'h_s_stor' => '$hsub->third(1999)', 'h_s_retr' => '$val = $hsub->third', 'h_s_sup' => '$hsub->second(20)', 'h_s_rup' => '$val = $hsub->second', };