ごとけんです

In message "[ruby-math:00135] Re: %  &  divmod() & remainder()"
    on 00/01/27, Yukihiro Matsumoto <matz / netlab.co.jp> writes:

>つまり、floorやceilも含めてぜんぶ「数としてのプロトコル」に
>含めるということなんですかね。数を統一的に扱えるというメリッ
>トはありますが、なんか変な気もします。
>
>型宣言がないからと言って(動的な)型に無頓着であるべきというわ
>けではないと思います(小林さんはそうは言ってませんが)。Perlの
>ような動的な型もあるんだかないんだかという言語とは違うわけで
>すから。

僕も floor や ceil はプロトコルとして定義してあった方が良い
と思います。型に無頓着なのではなく、数学ではこれらは実数上で
定義された関数ですので、整数や有理数にも定義されているとアル
ゴリズムを記述する上で無用な条件分岐をしないすむため必要だと
考えます。

なお、Integer ではいずれも self をそのまま返すすべきでしょう。

# これらの関数は float と double で違います(FreeBSD)

-- gotoken