OK, I'm beginning to think this is some kind of bug with -M, or the OS (happening on Linux and Mac, though). If I add a delay into the test script of a whole 5 seconds, the file age will sometimes be reported as a negative value -1.15740740740741e-05.
I think I'm going to solve this by simply changing it from -M $file > 0 to -M $file > -1 as suggested above.
But curious to know why it's reporting a negative value at all.
$PM = "Perl Monk's";
$MCF = "Most Clueless
Friar Abbot Bishop Pontiff Deacon Curate Priest Vicar";
$nysus = $PM . ' ' . $MCF;
Click here if you love Perl Monks