[#41455] オブジェクト同士の演算などを実装するには? — Hideo Konami <konami@...>

小波です.

24 messages 2005/11/02
[#41457] Re: オブジェクト同士の演算などを実装するには? — rubikitch <rubikitch@...> 2005/11/02

From: Hideo Konami <konami@kyoto-wu.ac.jp>

[#41459] Re: オブジェクト同士の演算などを実装するには? — Hideo Konami <konami@...> 2005/11/03

小波です.

[#41461] Re: オブジェクト同士の演算などを実装するには? — IWAOKA Masahiro <iwaoka@...> 2005/11/03

いわおかです。

[#41489] Matrixの継承について — argento@...

はじめまして。吉田と申します。

25 messages 2005/11/06
[#41495] Re: Matrixの継承について — Yukihiro Matsumoto <matz@...> 2005/11/06

まつもと ゆきひろです

[#41497] Re: Matrixの継承について — "T.Y" <argento@...> 2005/11/07

るびきち様、まつもと様

[#41499] Re: Matrixの継承について — keiju@... (石塚圭樹) 2005/11/07

けいじゅ@いしつかです.

[#41529] Re: Matrix の継承について — Shin-ichiro HARA <sinara@...> 2005/11/12

原です。

[#41535] Re: Matrix の継承について — keiju@... (石塚圭樹) 2005/11/14

けいじゅ@いしつかです.

[#41536] Re: Matrix の継承について — Yukihiro Matsumoto <matz@...> 2005/11/14

まつもと ゆきひろです

[#41537] Re: Matrix の継承について — keiju@... (石塚圭樹) 2005/11/14

けいじゅ@いしつかです.

[#41538] Re: Matrix の継承について — Yukihiro Matsumoto <matz@...> 2005/11/14

まつもと ゆきひろです

[#41503] 数を減らしてくループ — Takeshi Horinouchi <horinout@...>

堀之内と申します。

13 messages 2005/11/08

[#41602] エクセルファイルを読み込む際の問題(質問) — "Hisashi Yahata" <yahatah@...>

質問で恐縮ですが、ご教示ください。

14 messages 2005/11/28

[#41624] MacOS X Aqua 対応のための tcltklib の extconf.rb — Hidetoshi NAGAI <nagai@...>

永井@知能.九工大です.

26 messages 2005/11/30
[#41625] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — Hidetoshi NAGAI <nagai@...> 2005/12/01

永井@知能.九工大です.

[#41627] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — 天野 竜太郎 <wn9r-amn@...> 2005/12/01

天野竜太郎と申します。

[#41636] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — Hidetoshi NAGAI <nagai@...> 2005/12/02

永井@知能.九工大です.

[#41637] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — 天野 竜太郎 <wn9r-amn@...> 2005/12/02

8.4.10のtcl.hやtk.hは、

[#41644] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — Hidetoshi NAGAI <nagai@...> 2005/12/03

永井@知能.九工大です.

[#41646] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — 天野 竜太郎 <wn9r-amn@...> 2005/12/03

> Tcl/TkAqua もこの Macintosh のルールに従うのであれば

[#41647] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — Hidetoshi NAGAI <nagai@...> 2005/12/03

永井@知能.九工大です.

[#41649] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — Hidetoshi NAGAI <nagai@...> 2005/12/03

永井@知能.九工大です.

[#41650] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — 天野 竜太郎 <wn9r-amn@...> 2005/12/04

天野です。

[#41651] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — Hidetoshi NAGAI <nagai@...> 2005/12/04

永井@知能.九工大です.

[#41653] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — 天野 竜太郎 <wn9r-amn@...> 2005/12/04

[#41658] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — Hidetoshi NAGAI <nagai@...> 2005/12/04

永井@知能.九工大です.

[#41663] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — 天野 竜太郎 <wn9r-amn@...> 2005/12/04

完全に私の勘違いです。

[#41664] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — Hidetoshi NAGAI <nagai@...> 2005/12/05

永井@知能.九工大です.

[#41665] Re: MacOS X Aqua 対応のための tcltklib の extconf.rb — 天野 竜太郎 <wn9r-amn@...> 2005/12/05

ruby-list:41651の

[ruby-list:41592] Re: Matrix の継承について

From: Shin-ichiro HARA <sinara@...>
Date: 2005-11-25 07:29:21 UTC
List: ruby-list #41592
原です。

In [ruby-list:41584] 
>けいじゅ@いしつかです.

>他のメイルには返事できていないんですが, それとは関係ないここだけ.
># もう少しお待ちを...

いえ、なかなかこれが正解、っていうのがないので慎重なのがいい
と思います。


>それって,
>
>class N < Matrix
>
>として,
>
>n1 op n2 => n3 (n1, n2, n3 is N)
>
>ってことですよね...

そうです。

>エルミート行列の例でもそうですが, 一般にそうなり得るかどうかわからない
>のに, そうするのは, 問題ありではないでしょうか? やはりこれはサブクラス
>で判断するべきものではないでしょうか?

そうですねえ、、、。(エルミートなら+で閉じるけど、、、*で閉
じないなあ。)

>それに,
>
>n1 op aA => ?
>aA op n2 => ?
>
>ってもんだいもあります.

結局「opの字面や定義や意味による」んでしょうね。例えば+(あ
るいは-)ならどうしても

 5kg + 10kg = 15kg

のように種類が変わらないのが基本で、そういう操作にこそ+とい
うメソッド名を与えるべきですよね。だから、サブクラスSに対し

  S + S => S

はいいのではないか。しかし、*については、

  [0, 1] * 3 => [0, 1, 0, 1, 0, 1]

というのもある。つまり今思いつきで分類すると

  M * M => M      環型 (例:1 * 2 = 2)
  M * R => M      モジュール型(例:[0] * 2 = [0, 0])
  M * M => M**2   テンソル型(例:?)
  M * N => O      他(例:?)

があって、それぞれのケースについて相応しい継承の形(継承させ
ないことも含む)があるのではないでしょうか。<< は

  [0, 1] << 2 => [0, 1]

だからモジュール型かな。String#<<は環型?他にも

  [0, 1] < [0, 2] => true  (M op M => N)

のようなのもあるけど、そんなに分類は多くはないですね。

で、それぞれについてそれに相応しい継承の仕方があって、一概に
は決められはしないけど、決まるものは決まる。

さしあたってArray#+、Array#*については継承してもいいような気
がするんだけどなあ。

ああ、今実験したらArray#*は継承していますね。

  class S < Array
  end

  p (S[0, 1] * 2).class #=> S


In This Thread