# this reports a problem if func() fails. func $arg1, $arg2 or warn "error invoking func()"; # so does this func( $arg1, $arg2 ) || warn "error invoking func()"; # Not what you might expect # this invokes func( $arg1, ($arg2 || warn "error invoking func()" ); func $arg1, $arg2 || warn "error invoking func()"; #### # At the top of the file in the configuration section my $first_backup = 1; my $backup_backup = 2; unless ($dontdothis) { my $status = dofistcritical() or dobackupcritical() or die "main and backup failed"; if ( $status == $first_backup ) { dobackupremainder(); } elsif ( $status == $backup_backup ) { dofirstremainder(); } else { die( Invalid status '$status' from first backup component" ); } }