原です。

>|すいません、rationalize というのを知らないのですが、
>|これは何を求める関数なのでしょう?
>
>CommonLispには浮動小数点数を有理数に変換する関数が二つあって、
>rationalは高速だが不正確(というかなんというか)で、
>rationalizeは低速だがより直観的(というかなんというか)な結果
>を返すそうです。以下、CLtL2からの引用です。

ありがとうございました。

>(float (rational x) x) == x
>
>and
>
>(float (rationalize x) x) == x

rationalizeって怪しいですね。面白そうなので、どこかからパクって
実装に加えようかと思います。to_rにはrationalかな。