From: james@... Date: 2002-04-05T16:00:22+09:00 Subject: RE: True equality? > In if statements the values false and nil are false, and all > other values are true. > > In the first case is clearly true by the above definition. > > The second and third case first evaluate the == expression and then > apply if to the result. Now because 1==true => false, and true==1 =>false > the if statement is clearly not executed. == means equality at > the object > level and is usually overridden. It should return true iff both arguments > are the same object. Got it. Thanks. I think I was expecting some implicit type conversion that just doesn't happen (as, for example, with 1.0 == 1). James > > - Einar Karttunen >