Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask

Unless vs. Until?

by inblosam (Monk)
on May 22, 2002 at 06:53 UTC ( #168367=note: print w/replies, xml ) Need Help??

in reply to until loops

Can't you just use an "unless" just the same? Is there an advantage/disadvantage to one or the other?

$year=1900; unless($year==2000){ #notice unless instead of until print "blah blah $year\n"; #now it works; $year++; } print "Done\n";

Michael Jensen
InShift Technologies

Replies are listed 'Best First'.
Re: Unless vs. Until?
by jeffenstein (Monk) on May 22, 2002 at 07:03 UTC

    Unfortunately this won't work. The until loop will continue redoing the block until the condition is met. Unless will only execute the block one time, leaving the counter at 1901 instead of 2000.

    Update: crazyinsomniac has pointed out a better way to say this: The unless(condition) statement is saying the same thing as to if( not condition). The until(condition) statement is equivelant to while( not condition).

    That is to say, until() and while() are loops, and will repeat until the condition is met, while if() and unless() are not, and will only execute the block 0 or 1 times. Therefore, you can't trade unless() for until().

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://168367]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (4)
As of 2016-10-26 04:52 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (333 votes). Check out past polls.