Это из реального кода:
if ( $self->check_prereq + $self->check_autofeatures != 2) {
Вообще-то, стандартно (более-менее) истиной считается любое ненулевое значение, то есть там, теоретически может быть что угодно, и считать это равным двум, глупо. Ну и ненужно, в данном примере на Перл это вполне можно сделать и корректно, и элегантно:
unless ($self->check_prereq && $self->check_autofeatures)
Кто это писал, я так понимаю, в принципе не знакомы с булевой логикой.