sub scan_file { my ($filename) = @_; local *FILE; open FILE, "< $filename" or die "couldn't read '$filename': $!"; return grep { ! /^#/ } FILE; # Perl closes FILE here };