Benchmark::ProgressBarというものを書きました。

追記:id:tokuhiromがほぼ同じ物を書いていたんだが、俺がsvk importしたらそのまま上書きしたらしいよ

長い時間かかるベンチマークを待つのが苦痛で苦痛でしょうがなかったので、なんとかしてプログレスバーを出したかったのです。

で、元々はこういうコードだったのを
use strict; use Benchmark qw(cmpthese); use Crypt::DH; use Crypt::DH::GMP; .... { print "Benchmarking instatiation cost...\n"; cmpthese(500, { pp => sub { Crypt::DH->new(%args) }, gmp => sub { Crypt::DH::GMP->new(%args) }, } ); }
こういうふうにすると:
use Benchmark::ProgressBar qw(cmpthese); # あとは一緒
こんな感じでプログレスバーが出るようになります。
Benchmarking instatiation cost... gmp: 35% [======================== ]
あら素敵☆なんとなくいつ終わるかわかるわ!

コードはめちゃくちゃ汚いです。まねしてはいけません。