This is really not that weird. Ruby is duck typed and object oriented. What is weirder is that there are methods that return true or false at all, since that should almost never be used.
I think you missed my point - an API that should have been symmetric isn’t. Simple as that. While I disagree that it’s a good idea to return anything but true and false from a predicate method (regardless of duck typing), I didn’t really touch on this in that particular post.