Thanks for the example.  I can see that in the case statement involving
object, it behaves just like the "kind_of?" method.

However, in the "Programming Ruby" book, this is what is written:

-----------------------------
Object
==
Equality---At the Object level, == returns true only if obj and anObj are
the same object.  Typically this method is overridden...
===
Case Equality---A synonym for Object#==, but typically overridden...
-----------------------------

Can I say, then, that the "Programming Ruby" book is wrong in this
case?  With the simple example, there is nothing that overrides the
"===" operator, isn't there?  Should I find another Ruby book now, the
nutshell by Mr. Matz, perhaps?

Regards,

Bill
==========================================================================
ts <decoux / moulon.inra.fr> wrote:
>  Try this
>    
>    class A
>    end
>    
>    class B < A
>    end
>    
>    case B.new
>    when A
>       puts "I'm an A"
>    end
> Guy Decoux