Perlについての質問箱 57箱目
■ このスレッドは過去ログ倉庫に格納されています
0650デフォルトの名無しさん
2013/02/16(土) 14:29:46.43あぐらをかいて、自分で関数を作らないから、
自分の限界=他人が用意してくれたものになるんだよ。お前ら。
例えばこんな汎用関数(batch_shift)を作ればスマートに書けるだろ?
while(@list) {
my $i = 0;
my @results = batch_shift { ($i+=$_) <= 100 } \@list;
# @resultsの固まりに処理をする
}
batch_shiftは条件を満たしている限り取り出していくshiftの拡張版
grepでも近いことはできるが、@listを破壊するのと
条件を満たさなくなった時点で打ち切るという点で違う。
batch_shift の実装ぐらい省略していいよな?
まあ、俺はここまで考えてから、batch_shiftを実装する前に
既存のモジュールでこのようなことが出来るものがないか探す工程を入れるけど。
■ このスレッドは過去ログ倉庫に格納されています