sub open_file { my ($mode, $file) = @_; my $fh = gensym(); open $fh, $mode, $file or croak("could not open '$file': $!"); return $fh; }