10年前に書かれたまま、更新してないとかじゃねーの。
例えば、
>local *CATCHOUT = IO::File->new_tmpfile;
>local *CATCHERR = IO::File->new_tmpfile;
>my $pid = open3(gensym, ">&CATCHOUT", ">&CATCHERR", "cmd");
IO::File->new_tmpfile が「ファイルハンドルを返すもの」と理解してれば、
今の時代にこんな書き方はしない。
se IPC::Open3;
use IO::File ;
use Symbol qw(gensym) ;
my @cmd = qw( ls ) ;
my $tmpout = IO::File->new_tmpfile;
my $tmperr = IO::File->new_tmpfile;
my $pid = open3 gensym, $tmpout, $tmperr, @cmd ;
waitpid $pid, 0 ;
print while <$tmpout>;
配列にある要素があれば1、なければ0を返すコードはどのように書けばよいでしょうか?
grep {$foo == $_} @ARRAY
>>330 {$foo == $_} より {$foo eq $_} の方がいいかも
ケースバイケースだろうけど
List::MoreUtils の any も試してみたら
grepの10倍遅かったw
>>327 > 今の時代にこんな書き方はしない。
今の時代に合わない、ネットの書き込みを
全部排除してくれ。
世の中モダンPerlだけでいい。