in reply to Parentheses missing around "my" list

The compiler (lexer/parser) is trying to figure out whether this is my VAR, or my LIST, and is getting confused. When you put in the quotes, perl can figure it out.

Instead, you should switch to the three-arg version of open, and make your mode explicit. It's a good habit, IMO, because the maintenance programmers will love you for it. :-) open my $file, '<', $filename or die "Can't open $filename: $!";