Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

comment on

( #3333=superdoc: print w/replies, xml ) Need Help??
So does anyone have a really strong reason NOT to use -s

I do. It has weird semantics that can trip you up. Consider:

% cat s #! /usr/bin/perl -s print "x is [$x]\n"; __END__ ~/perl% ./s -x=s x is [s] ~/perl% ./s -x s x is [1]

I'm not in the habit of using = to set flag values, so on the odd occasion that I use -s it always trips me up. So -s is only for my private stuff that no-one else needs to use, ever. Even so, I tend to print out flag values as a reminder to watch out for flags that I might be accidently setting to 1.

That, and it doesn't play very nicely with strict 'vars'.

On the other hand, I can remember how it works, whereas when using Getopt::Std or Getopt::Long I always have to consult the documentation, or cut and paste some code from another program. But still, those modules do The Right Thing, so there's really no reason not to use them in programs that will be run by anyone other than yourself. The -s assignment oddity is just too annoying.

Update: it might sound like I'm advocating that it is alright to use -s on some occasion. I should point out that the number of scripts I have written that I can recall using -s make a grand total of... 1.

- another intruder with the mooring of the heat of the Perl

In reply to Re: Is using '-s' really bad and why? by grinder
in thread Is using '-s' really bad and why? by Rhys

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others imbibing at the Monastery: (4)
    As of 2020-11-24 07:20 GMT
    Find Nodes?
      Voting Booth?

      No recent polls found