My observations on why and why not to use some pragmas

#!/usr/bin/perl -T use strict; use warnings;

strict also does some runtime checking of your code and as such probably should be left in for production.

use diagnostics loads up a big overhead on startup and probably should only be for debugging due to the performance hit.

Also one should put -T on the #! line of any program which takes user input to detect a host of other insecure coding practices.

warnings dont seem to pose any noticeable delay and if your code emits no warnings then its probably easier to maintain that code that dumps a bunch of them.

Finally, strict and warnings on and silent will earn you points with the person who inherits the code base from you to maintain.


In reply to Re: Why use strict/warnings? by dga
in thread Why use strict/warnings? by Mr.T

Title:
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, details, 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, summary, 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.