in reply to perl-assoc 0.4

With no command line parameters I get:

Use of uninitialized value in string eq at perl-assoc.pl line 64.

three times interspersed with the expected output. All the ARGV tests should be wrapped in a if (@ARGV) {...} block. The current default case else then belongs to the new outer if block (do the else if there are no command line args).

Your example uses /f, but /F is required for formatting.

It would be worth running your code through perltidy - the indentation is rather arbitary in places.

unless($warnalert = 1) is an error. It should probably be unless($warnalert)

chop $ext; is an error. It is not required at all. There can be no line ends in command line arguments in Windows.

print "$ext=$class \n" would be better as print "$ext = $class\n".


DWIM is Perl's answer to Gödel