perl -Mstrict -wle "my@r;$|++;while($_++<$ARGV[0]){eval sprintf q{my$self=\%s;push @r,sub{ $self }},$_,$_; if(!($_%100000)){printf qq(%010d\r),$_;@r=()}}" 1000000000