[#38470] ruby-dev summary 21403-21530 (draft) — Minero Aoki <aamine@...>

青木です。

25 messages 2003/10/07
[#38475] Re: ruby-dev summary 21403-21530 (draft) — maili31s@... (SugHimsi==SUGIHARA Hiroshi) 2003/10/07

すぎむし。

[#38480] Re: ruby-dev summary 21403-21530 (draft) — Minero Aoki <aamine@...> 2003/10/08

青木です。

[#38481] marshal_dump (was Re: ) — m_seki@... 2003/10/08

[#38484] Re: marshal_dump (was Re: ) — matz@... (Yukihiro Matsumoto) 2003/10/09

まつもと ゆきひろです

[#38486] Re: marshal_dump (was Re: ) — Masatoshi Seki <m_seki@...> 2003/10/09

咳といいます

[#38489] exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to>

<http://www.unixuser.org/~ysjj/diary/?200310a&to=200310082#200310082>

29 messages 2003/10/09
[#38490] Re: exit status on exit! — Koji Arai <JCA02266@...> 2003/10/09

新井です。

[#38503] Re: exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to> 2003/10/10

In Message-Id: <20031010.082218.74733862.JCA02266@nifty.ne.jp>

[#38505] Re: exit status on exit! — Koji Arai <JCA02266@...> 2003/10/10

新井です。

[#38507] Re: exit status on exit! — matz@... (Yukihiro Matsumoto) 2003/10/11

まつもと ゆきひろです

[#38514] Re: exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to> 2003/10/11

In Message-Id: <1065883639.405037.23137.nullmailer@picachu.netlab.jp>

[#38515] Re: exit status on exit! — WATANABE Hirofumi <eban@...> 2003/10/11

わたなべです。

[ruby-list:38448] Re: 複素数を考慮したVectorクラス

From: nobu.nakada@...
Date: 2003-10-01 06:32:17 UTC
List: ruby-list #38448
なかだです。

At Wed, 1 Oct 2003 14:59:55 +0900,
TANAKA Kenta wrote:
> 1) @comp = $".include?("complex.rb") はinitializeに書いてよいのか。
> 2) compは、インスタンス変数とすべきなのか。

Vectorを作った後でcomplex.rbがロードされることも考えられるので、
初期化時点で決定するのは望ましくないような気がします。

Complexが有効かどうかなら defined?(Complex) で、Numericに
conjugateが定義されているかどうかなら 0.respond?(:conjugate) か
defined?(0.conjugate) あたりで調べたほうがいいと思います。

> 3) inner_product, r内の if @comp 〜 else … では、〜と…はほとんど同じ
>    処理で、美しくない。別の書き方はないのか。
>    @comp ? v1.conjugate : v1なども考えたが、これはループごとに
>    @comp評価が起こり(?)、無駄である。

inner_productについてはとくに思い付かないのですが、rに関しては、
Complexにはabs2というメソッドがあるので、Numericにも self*self 
という形でabs2が定義されていれば

  v = 0
  for e in @elements
    v += e.abs2
  end
  Math.sqrt(v)

あるいは

  Math.sqrt(@elements(0) {|v, e| v + e.abs2})

とできそうです。

-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦

In This Thread