in reply to Coding styles using if/else

If I'm validating input, as in the example, I'm inclined to leave off the else. That's normally at the top of a sub, and I don't want to have the whole sub another level deep because it's all in else.

If it's more like a real branch, I might include the else. If the behavior changes so that the one branch does not exit, I want to be able to do that easily (i.e., without having to add the else).

I avoid using ternary operators for branching like this. I think of it as something that returns a value, so I don't like having it in a void context. If it's that important to save vertical space, I'd rather crowd my curlies than use a ternary.

if ( ! $sanity ) { print "Mandatory happiness violated.\n"; exit } else { print "You are happy.\n" }

...but even that I don't like much.

I'm generally of the opinion that code grows. Today's exit may be tomorrow's warn. The one line will be three. You should write it now to accommodate its growth later.