use Errno; ... my %skater_avg = map { chomp; my( $skater, @scores ) = split /,/; { $skater => ( sum(@scores)-min(@scores)-max(@scores) ) / (@scores-2) } } <>; warn "custom message!\n" if $!{ENOENT};