Charlie Harvey


nil != true

IMO, you are incorrect in stating "nil is neither true nor false". nil is false. You seem to be determining that it is not false due to "nil or not nil" returning false. "not nil" evaluates to "nil", so you are really saying that "nil or nil", both of which being false, evaluate to false.