$ perl -c -e'my $x = if (f()) { g(); } else { h(); }' syntax error at -e line 1, near "= if" -e had compilation errors. $ perl -e'my $x = unless (f()) { g(); } else { h(); }' syntax error at -e line 1, near "= unless" -e had compilation errors. #### $ perl -c -e'my $x = ( f() and g() );' -e syntax OK $ perl -c -e'my $x = ( if (f()) { g() } );' syntax error at -e line 1, near "( if" -e had compilation errors.