Tim Bates wrote: > > What is the rationale behind Array === Array (or indeed any other class) being > false? It's the case equality operator. The Array class object isn't a case of Array, its a case of Class. > Array.new === Array is also false. Array === Array.new #=> true > How do I test what class some > object is in a case statement? The case statement reverses the order of the call when calling the ===. case Array.new when Array puts "I'm an Array" end # outputs "I'm an Array" -- (\[ Kent Dahl ]/)_ _~_ __[ http://www.stud.ntnu.no/~kentda/ ]___/~ ))\_student_/(( \__d L b__/ NTNU - graduate engineering - 5. year ) ( \__\_õüõß/__/ ) _)Industrial economics and technological management( \____/_öß\____/ (____engineering.discipline_=_Computer::Technology___)