open(IN,$log) || die $!, "\n";
####
if ( $_ !~ m/$i/ ) {
print;
}
####
open FH, "filename" or die $!;
#will read as its meant to: open(FH,"filename") or die $!;
open FH, "filename" || die $!;
#will read as: open FH,("filename" || die $!); which is not good since the only time
#this expression will be treated as false is in cases where filename is an undefined expression(0,"",or undefined scalar)
#but unrecognized file names will not be evaluated as false so the die will serve no purpose and the the script will continue to run