in reply to Complex conditional statements

You can always test something like that with a one-liner.

% perl -wle '1 unless 2 or (3 and 4) if (5 and 6)' syntax error at -e line 1, near ") if" Execution of -e aborted due to compilation errors.
On the other hand, statement modifiers at the end are syntactically OK; e.g. 1 or 2 if 3.

Whether it is good programming is less clear-cut.

I like using statement modifiers rather than regular if-else blocks whenever the contents of the blocks would have been short. I.e.

bar() if $foo;
rather than
if ( $foo ) { bar(); }
And sometimes I stretch it to statements like
bar() or baz() if $foo;
in preference over
if ( $foo ) { unless ( bar() ) { baz(); } }
...but I suspect this is already inching into obfuscation.

Great question++, BTW. I look forward to reading the responses you get.

the lowliest monk