Perl's 'if' has to go. It obfuscates needlessly by taking the emphasis of the code away from the conditionals it is trying to highlight. E.g. check out the following typical? code snippet.
if ( $a > $@b and $@b < $c ) { for (@b) { if (/f(?:o|a)o/) { foo($_); next; } if (/b(?:a|u)r/) { bar($_); next; } if (/.*/) { error($_); } } }
$a < $@b and $@b < $c and do { for (@b) { /f(?:o|a)o/ and do { foo($_); next; }; /b(?:a|u)r/ and do { bar($_); next; }; /.*/ and error($_); } };
Problems with this approach include:
/foo/ { foo(); }
if($blah){ derrrr(); }else{ duhhhh(); }
$blah ? do { derrrr(); } : do { duhhhh(); };