>>>>> "B" == Bulat Ziganshin <bulatz / integ.ru> writes: B> def a(String x) B> end B> def a(Array y) B> end B> translated into: B> def a1(x) B> end B> def a2(y) B> end B> def a(z) B> case z B> when String then a1(z) B> when Array then a2(z) B> end B> end And this translated to ? def a(Array a, Object o) end def a(Object o, String s) end Guy Decoux