Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask

Re^3: in search of a more elegant if then else

by fullermd (Priest)
on Feb 19, 2010 at 06:34 UTC ( #824103=note: print w/replies, xml ) Need Help??

in reply to Re^2: in search of a more elegant if then else
in thread in search of a more elegant if then else

It gets unreadable for all but the most trivial of expressions

Right. It's possible to back yourself (or front yourself, if you're twisted :) into monstrosities with it. The classic C 12 Days of Christmas puts it to good (?) use, among its other distortions.

Like a lot of things in perl (or any language, really), you just have to keep an eye on yourself to be sure you stay inside the lines. My two rules of thumb are length and nestedness:

  • If I start nesting, that's a sign I should write it out in more explicit form
  • If it starts getting much longer than 1 line, or there're more than maybe one or two logical ops (&&, ||, etc) in the condition, I should probably switch to if/else

(None hard rules of course, but signs that I'm wandering off the beam and should take a step back to reevaluate)

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://824103]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (6)
As of 2020-11-24 09:52 GMT
Find Nodes?
    Voting Booth?

    No recent polls found