原です。

> > 特に有理数体は整数環からつくった「商体」と呼ばれるもので、これ
> > は割り切れないものを無理矢理割り切れたと考えた、不自然な人工物
> > だと言えなくもない。つまり 5 / 2 == 2 の方が先にあって、5分の2
> > というのは、人間が屁理屈をつけて勝手に作った想像上の数である、
> > というわけです。実際、コンピュータ上の実装も難しいし。
>
>僕は現状でいいと思いますが、有理数をそこまでやっつける必要は
>ないでしょう ^^;;

いやいや、これは「5 / 2 == 2 は数学的に不自然」という説への
反論であって、本気で「有理数は存在しない」みたいな、ピタゴラ
ス教団真っ青の歴史上類のない主張するほど痴呆は進んではおりま
せん、、、多分。(^^;

そもそも商体云々は、数概念の集合論的な実装上の問題であって、
数の本質ではないとも言える。「数は存在する。数は唯一である。」
という素朴な直感が第一である、その後に起こることは技術的な問
題に過ぎない、いうのも大切な考え方ではあります。


>確かに有理数は代数の台集合と思うとかなり巧妙な人工物ではある
>けれど、お料理のときに2/3カップの出し汁を使ったりするわけで、
>しかもそれは4人前の分量だったりするので、それを1人分にすると、
>1/6カップにしないといけません。

そういう考え方もありますね。これは「外延量」としての有理数
というやつで、「1/3 カップと 1/6 カップを合わせると 1/2 カ
ップ」みたいな、目で見えるサイズがあって加法などができる量
です。

もう一つ、「内包量」としての有理数は、例えば「1/3 の濃度の
溶液と 1/6 の濃度の溶液、足して 1/2 というわけでない」とい
うように単純な加法に意味のない、「比」という抽象的な概念の
表現です。

他にもいろんな種類の量があるけど、なぜか数学やコンピュータ
上では、比として有理数を実装せざるを得ず、加法などの操作や
等号の定義が、かなり複雑にならざるを得ない。

そこで「5 個卵があるが、オムレツ焼くのに一皿 2 個必要だとす
ると、何皿作れる?」みたいな素朴な演算に Integer#/ を当てる
のは、まずまず自然なことではないかと思うのです。


>量を表すための数としては有理数というか分数は非常にありふれた
>ものでしょう。だからプログラミング言語が考え方を表現するもの
>という意味ではむしろ積極的にサポートされるべきだと思います。
>
>けれどもそれが Integer#/ として提供されるべきかどうかはまた
>別の問題だ…という感じではないでしょうか。

そういうことですね。