use strict; use warnings; open my $in, '<', "a"; print firstline("b"); sub firstline { open (my $in, shift) && return scalar <$in>; # no close() required }