> Then how it is different from
> foo.bar if foo.respond_to?(:bar)
>
> ?

You don't have to write foo and bar twice :)

I'm with you in thinking that adding another syntax
foo.?bar
seems a little much when a new method will do.
-=r