児玉 です.

From: Shin-ichiro HARA <sinara / blade.nagaokaut.ac.jp>
Subject: [ruby-math:00430] Re: Numeric.new
Date: Tue, 27 Mar 2001 13:33:52 +0900
Message-ID: <4.3.2-J.20010327131729.02cf8e98 / blade.nagaokaut.ac.jp>

> 原です。
> 
> >ごとけんです
> 
> >そうなんですが、台に包含関係があるような集合間で代数をつくる
> >には、coercing ではどうしても書きづらく、なんらかの型ベース
> >の method signature が必要だと僕は考えています。
> 
> 同感です。っていうか、数学的にはcoercingなんか必要ない。(^^;

良く分からない.


> ちょっと話題がそれるかもしれないけれど、代数系や台集合の包含関係
> をクラスや継承関係にマップすることも、無理にしなくてもいいのでは

あれば便利.

> ないでしょうか。変換関数さえあればいい。

そのほうが安全でもある. と思う.
明示的でない変換は便利だが危険だ.

> 今回は、PolynomialをArrayのサブクラスに、MPolynomialをHashの
> サブクラスにしてしまったのは、そういう気持ちもあります。ちょっと
> やりすぎかなという気もしていて、後退しようかなと考えてもいますが。

これで通すのも面白いと思う.
Hash は分からないが, Array に関しては
こんな具合に同一視を正当化できる.

多項式<-->有限数列の母関数<-->有限数列<-->Array

普通のサブクラスの使い方と違って,
"....を....とみなせる" とかの "みなし関係" を表にだして
クラス間の関係に map していると思える.

ちょっと質問:
クラス間の(サブクラス)関係とは別に,
実装を与えることってできる?
例えば,
class Polynomial < Array 
だけど
Polynomial の実装は Array でなく Hash を用いているとか...
-- 
K.Kodama(kodama / kobe-kosen.ac.jp)