Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Comment on

( #3333=superdoc: print w/ replies, xml ) Need Help??
I rarely make any of these mistakes, although I've done the first kind of thing with chomp a bunch of times. (my @chomparr = map chomp, @rawarray; my solution to this has been, just to accept chomp in place: chomp for @array. Here are some of my favorite mistakes:

;
I'm always leaving out semicolons in random places where they are required. This has gotten worse lately as I have been switching back and forth between Perl and Python alot.

}
As others have mentioned in this thread, leaving out a closing brace (or having an extraneous open brace) can be a pain to track down since Perl's error output on this one is not optimally helpful. I sometimes have to take a binary approach to finding the problem. Start by sticking a __END__ in about the middle of the code. If you still get this error move the __END__ to about 3/4ths of the way down. If you don't, move it up to the 1/4 position. And so on.

use Data::Dumper warn Dumper($var);
This is really just a variation on the ';' issue above but I do it so often it deserves its own listing.

sub mysub($a) {my ($a) = @_; ...}
This is another case of Python poisoning.

if $this eq $that {do something}
Parentheses are optional so many places that I (or at least my fingers) forget where they are required.

use Module qw( $a, $b, $c )
'Fortunately' this usually causes a compile error or at least a warning with -w, so I catch this quickly.

--DrWhy

"If God had meant for us to think for ourselves he would have given us brains. Oh, wait..."


In reply to Re: Stupid mistakes I repeatedly make by DrWhy
in thread Stupid mistakes I repeatedly make by brian_d_foy

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!
  • 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?
    Username:
    Password:

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

    How do I use this? | Other CB clients
    Other Users?
    Others scrutinizing the Monastery: (8)
    As of 2015-07-28 05:51 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?

      The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









      Results (252 votes), past polls