In any case, I prefer to use the ternary operator '?' for single cases or occasionally double cases. Beyond that is getting a little bit too clever (but don't take that personally).
No, I don't take it personally. Actually, I take it as an advice about
maintaing a good balance between cleverness and readability. Which is always a good advice.
First of all,
since you used the word "clever", I should confess that I stole that idiom
from TheDamian :)
Here
it's where I've seen it the first time.
Maybe I shouldn't call it "idiom", since it's
not, AFAIK, commonly used by Perl programmers. I'm just wondering if it's
worth to be diffused, like the Schwartzian Transform, which is difficult at
first sight, but once you grocked it, it's useful in many situations and,
when it's correctly applied, improves performance and, IMO, readability
(I mean: a well trained programmer should be able to recognize the code
pattern, abstract from details and just look at what is going to be ordered,
and how it's going to be ordered: things that are well separated in ST)