open( my $fh_file, "<", $file ) or die "Could not open file '$file' $!";
do_thing() unless predicate();
do_thing() if predicate();
do_thing() until predicate();
... and lots more.
expr1 || expr2
if expr1 == false
expr2
else
true
In languages with macros, they may even be _implemented_ like that.