I certainly don't agree with replacing "if else" with "?:". You throw your readability out the window, IMO. But I guess that is what makes it "extreme".
Each has it's use in it's place. Use "?:" when you need to return a value in a statement inline. E.g.,
my $x = $test ? $y : $z; # is better (disclaimer - IMHO) than: my $x; if ($test) { $x = $y; } else { $x = $z; }
All of the examples of "?:" in that document (that I can see) are similar to this, so they're ok. Using "?:" in a void context is arguably not so good.
I can understand doing the above becuase visually you can isolate that line and grok it quickly. When you use it in a larger "else if" context you loose that visual recognition.
I do something very similar to this in my code on a regular basis - What I normally do is shift the ternary operators back onto the leading line so that it is immediately apparent that the line has not ended. For example:
my $foo = ( $bar =~/pattern/ ) ? ( some expression ): ( some other expression );
This of course is more of a question of style than anything else, and I know that I am somewhat obtuse and anal at times with regard to my
Cool but... (Score:1)
Re:Cool but... (Score:1)
Re:Cool but... (Score:1)
I can understand doing the above becuase visually you can isolate that line and grok it quickly. When you use it in a larger "else if" context you loose that visual recognition.
whitespace (Score:1)
my $foo = ( $bar =~
? ( some expression )
: ( some other expression );
Re:whitespace (Score:1)
This of course is more of a question of style than anything else, and I know that I am somewhat obtuse and anal at times with regard to my
Re:Cool but... (Score:1)
Re:Cool but... (Score:1)