in reply to Re: What makes good Perl code?
in thread What makes good Perl code?

#!/usr/bin/perl -sl

The -s switch is used to parse command line switches but your program doesn't use command line switches.

The -l switch is used to set the Output Record Separator to the same value as the Input Record Separator but later you are explicitly changing the Output Record Separator.

BEGIN { $^W = 1; } sub BEGIN { if ($^W == 1) { print "Let's get started...\n"; } else { die $@; } }

Why is this code here?    You turn global warnings on in a BEGIN block.    Why not just use the -w or -W switch?    And why use lexical warnings later as well?    And why die if warnings aren't enabled when you just turned them on?

local $OUTPUT_RECORD_SEPARATOR = *\ ;

Why are you assigning the value '*main::\' to $\?