The until Control Structure
Sometimes you’ll want to reverse the condition of a while loop. To do that, just use until:
until ($j > $i) {
$j *= 2;
}This loop runs until the conditional expression returns true. But
it’s really just a while loop in
disguise, except that this one repeats as long as the conditional is
false, rather than true. The conditional expression is evaluated before
the first iteration, so this is still a zero-or-more-times loop, just
like the while loop.[21] As with if and unless, you could rewrite any until loop to become a while loop by negating the condition. But
generally, you’ll find it simple and natural to use until from time to time.
[21] Pascal programmers, take note: in Pascal, the repeat-until
always runs at least one iteration, but an until loop in Perl may not run at all, if
the conditional expression is true before the loop starts.