On Sep 20, 2006, at 3:37 AM, Hussachai Puripunpinyo wrote: > puts nil==nil #Yeah that's true > puts !nil #true > puts !nil==true #true > puts nil==false #FALSE !!! > > What happen in the last statement? [or I miss something] nil isn't false. Both nil and false are objects in ruby. Compare: % irb >> [nil, false].map { |o| o.object_id } => [4, 0]