If you have multiple consecutive intervals, it's better to use an elsif cascade, such as
if ($ref <= 8) {
say "ref is at most 8.";
} elsif ($ref <= 16) {
say "ref is above 8 but at most 16."
} elsif ($ref <= 24) {
say "ref is above 16 but at most 24."
} elsif ($ref <= 32) {
say "ref is above 24 but at most 32."
} else {
sat "ref is above 32."
}
The
elsif part means that if the previous condition was found true, the next one is not tested for, so eg. if
$ref = 5 then the first branch is executed, the rest of the tests and branches are skipped.