Hi, Oh, I am really sorry, Matz. I was concentrating more on static vs. dynamic typing (like C vs. Ruby) and not on method overloading (like C vs. C++). I did not really follow the ongoing discussion regarding method overloading, because to me it seems to have little to do with performance and I will gladly accept whatever outcome that will be decided. I guess the other ongoing discussion on static vs. dynamic typing is easier/clenaer by assuming that we do not have method overloading. Yes, with method overloading, the code below will become more complicated, unless, of course, we just simply follow C++ strategy by just name-mangling the method name. Regards, Bill ============================================================================ Yukihiro Matsumoto <matz / ruby-lang.org> wrote: > Your "syntax sugar" just checks types. > |> | def func (a, b, c) > |> | raise "type error" unless a.kind_of Float > |> | raise "type error" unless b.kind_of String > |> | raise "type error" unless c.kind_of Fixnum > Guy's "dispatching" (and one I was talking about) select multiple > methods from its argument types. > matz.