log_failure() unless grep { exists($hash{$_}) && do_something($_) .. 1 } @options; #### grep { exists($hash{$_}) && do_something($_) .. 1 } @options or log_failure(); #### $ perl -Mstrict -we'my $s=1;for(qw/foo bar baz/){ print if /b/..$s }' barbaz$ $ perl -Mstrict -we'my $s=1;for(qw/foo bar baz/){ print if $s../b/ }' $ #### $ perl -e'for (qw/foo bar baz blah/){print int scalar(/b/..//)}' 0111$ #### { my $success; grep { ! $success && exists($hash{$_}) && do_something($_) .. ($success = 1) } @options or log_failure(); }