Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

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
http://www.inshift.com
michael@inshift.com

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?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://168367]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (3)
As of 2016-12-08 08:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    On a regular basis, I'm most likely to spy upon:













    Results (136 votes). Check out past polls.