整数から浮動小数点への暗黙の型変換ってRubyではどう実装されているのでしょうか?
例えばT_FLOAT型を期待している関数にT_FIXNUMを渡すと、そのままではエラーとなります。
関数の入り口で全部方をチェックして変換しているのでしょうか?