> So that means > puts "It's equal" if 0 == true > > but 0 != true. Although it seems it should be, since 0 != false as > well. So, by extension, if an object is not nil, and it is not equal to > false, then it would stand to reason that it is equal to true. > > Any thoughts? 0 is not equal to true, but is implicitly converted to true. Try: puts "It's equal" if !!0 == true