don't reuse variable names in scope
more checking return of eval
remove unneeded initializations
dead code
remove unused variables
use regex with split
trailing comma instead of semicolon
fix punctuation and formatting
use any instead of grep when all we're looking for is the first one
Issue #50: illusion of use of $1 after failed match
use three-arg open(), not two-arg
use strict