It seems a bit of a waste for Array#=== to default to Object#=== - it'd
be far more useful, IMO, to have it call include?. Can anyone see a
drawback to this?

Here's a real-world use case from the FXIrb code:

  def onKeyPress(sender,sel,event)
    case event.code
    when Fox::KEY_Delete,Fox::KEY_KP_Delete,Fox::KEY_BackSpace
      if getCursorPos > @anchor
        super
      end

which a change to Array#=== would let me write as

  config[:delete_keys] =
    [Fox::KEY_Delete,Fox::KEY_KP_Delete,Fox::KEY_BackSpace]
  .
  .
  .
    when config[:delete_keys]
      __etc__


martin