[#5809] mod_ruby-0.0.7 — Shugo Maeda <shugo@...>
前田です。
前田です。
moochan です.
青山です。
前田です。
moochan です.
前田です。
moochan です.
moochan です.
まつもと ゆきひろです
わたなべです.
前田です。
青山です。
前田です。
moochan です.
福間@福岡 です。
moochan です.
まつもと ゆきひろです
[#5895] [REQ] 中置の def — EGUCHI Osamu <eguchi@...>
えぐち@エスアンドイーです。
えぐち@エスアンドイー です。
In message <19990303103731R.eguchi@shizuokanet.ne.jp>
[#5965] Re: Precision in Mathematica (Re: Bigfloat) — keiju@... (石塚圭樹 )
けいじゅ@日本ラショナルソフトウェアです.
ごとけん
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
まつもと ゆきひろです
えぐち@エスアンドイー です。
けいじゅ@日本ラショナルソフトウェアです.
えぐち@エスアンドイー です。
けいじゅ@日本ラショナルソフトウェアです.
えぐち@エスアンドイー です。
けいじゅ@日本ラショナルソフトウェアです.
えぐち@エスアンドイー です。
えぐち@エスアンドイー%徳山出張中 です。
[#5970] [REQ] variable of regex — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
青山です。
前田です。
まつもと ゆきひろです
青山です。
まつもと ゆきひろです
[#6009] Re: [REQ] 中置の def — "Takehiko Ueki" <takehiko@...>
ども、植木です。
まつもと ゆきひろです
[#6059] [PATCH] str_index — IKARASHI Akira <ikarashi@...>
五十嵐です。
[#6090] Thread#kill — Shugo Maeda <shugo@...>
前田です。
前田です。
前田です。
[#6141] Retry of mod_ruby — moochan <moochan@...>
moochan です.
moochan です.
[#6213] Ruby 1.3.1-990311 — Yukihiro Matsumoto <matz@...>
Ruby 1.3.1-990311 is out, check out:
[#6229] exception re-raise in Thread#join — Shugo Maeda <shugo@...>
前田です。
[#6237] [REQ] p -10 == p(-10) — Koji Arai <JCA02266@...>
新井です。
[#6242] "a\n".gsub(/$/, '-') — Wakou Aoyama <wakou@...>
青山です。
[#6259] str += — WATANABE Tetsuya <tetsu@...>
渡辺哲也です。
[#6276] Re: [ruby-list:12784] String#index, String#unpack — IKARASHI Akira <ikarashi@...>
五十嵐です。
[#6288] [REQ] interh.h — Shugo Maeda <shugo@...>
前田です。
[#6328] Re: Ruby 1.3.1-990315 — WATANABE Hirofumi <watanabe@...>
わたなべです.
まつもと ゆきひろです
青山です。
まつもと ゆきひろです
青山です。
まつもと ゆきひろです
青山です。
まつもと ゆきひろです
まつもと ゆきひろです
まつもと ゆきひろです
青山です。
まつもと ゆきひろです
青山です。
まつもと ゆきひろです
新井です。
新井です。
青山です。
新井です。
青山です。
[#6334] Re: Ruby 1.3.1-990315 — Koji Arai <JCA02266@...>
新井です。
まつもと ゆきひろです
新井です。
新井です。
藤本です、こんにちは。
[#6356] [PATCH] ext/extmk.rb — WATANABE Hirofumi <watanabe@...>
わたなべです.
[#6426] wrong line number — Koji Arai <JCA02266@...>
以下のスクリプトが出力する行番号がおかしいです。
[#6434] Time#+ — Koji Arai <JCA02266@...>
新井です。
まつもと ゆきひろです
五十嵐です。
[#6446] sub("string", "string") — Wakou Aoyama <wakou@...>
青山です。
まつもと ゆきひろです
[#6491] about cur_mid — ttate@...
立石です。
[ruby-dev:6161] Re: Bigfloat [compare to NaN]
えぐち@エスアンドイー です。
>>> In message [ruby-dev:6153] Re: Bigfloat [compare to NaN]
On Tue, 9 Mar 1999 18:55:57 +0900, keiju@Rational.Com (石塚圭樹 ) said:
keiju> けいじゅ@日本ラショナルソフトウェアです.
keiju>
keiju> In [ruby-dev :6065 ] the message: "[ruby-dev:6065] Re: Bigfloat
keiju> [compare to NaN] ", on Mar/07 21:26(JST) EGUCHI Osamu writes:
keiju>
keiju> >えぐち@エスアンドイー です。
keiju> >keiju> いちおう, coerceで精度の低い方に合わせるのでも
keiju> >keiju> おなじ効果がありますが...
keiju> >
keiju> >その時だけってケースもあるのでは???
keiju>
keiju> 確かにあるかも知れませんね.
keiju>
keiju> >あ、coerce を特異メソッドにすればいいのですね ^^;;;
keiju>
keiju> うーん. できないこともないでしょうけど...
一般にそういう事が必要なケースって、あまりないですね ^^;;
keiju> >そうなんだけど、組み込みのクラスが coerce を使ってない
keiju> >場合もあるので、 Fixnum#coerce を再定義しても
keiju> >
keiju> > 1+1.1 => 2
keiju> >
keiju> >には出来なかったりするのでした。
keiju> >#この例では、無限精度の Fixnum に合わせていて、逆ですが、、
keiju> >(Fixnum#+ を再定義すればいいのだけれど、、、)
keiju>
keiju> ですね. これって, Fixnum#+でFloatとの演算を行なっちゃっているからです
keiju> ね.
keiju>
keiju> この辺りも, 新coerceでは解消された方がよいのかも...
それと、Bigfloat を組み込む時ですね ^^)
keiju> >fix_plus(x, y) の
keiju> >
keiju> > if (TYPE(y) == T_FLOAT) {
keiju> > return rb_float_new((double)FIX2LONG(x) + RFLOAT(y)->value);
keiju> > }
keiju> >
keiju> >の様な、「言語組み込みの数値の型変換」はなくすべきかも知れません。
keiju> >#効率の問題があるのですが ^^)l
keiju>
keiju> 型が違う時だけだから, よいでしょう.
これは「coerce の呼び出しで若干効率が落ちても」と言う意味ですね。
keiju> >関数ライブラリの多くは、
keiju> > テーブルルックアップ法で第一近似を得てから
keiju> > ニュートン法などで必要な精度を得る
keiju> >戦略で実装されていますが、可変精度でこれが使えるのか、
keiju> >考えています。
keiju>
keiju> おぉ.
keiju>
keiju> >sqrt に対する ** に様な、十分精度の出そうな質の良い逆関数が
keiju> >あれば問題ないのですが、sin() などでも、目的の精度が出たかの判断に
keiju> >難ありですね。
keiju>
keiju> この辺りの関数は, ニュートン法とかじゃなくてテーラー展開とか使うのでは?
keiju> そうでもないのかな?
下の atan とピタゴラスは、そのことを考えてました。
考えて見れば、級数なら比較的精度の予測は可能ですね。
#PI より e が簡単に求められそうな感触と同じ。
keiju> >(atan と三平方で判定すると、それ自体の精度に疑問が出そう、、)
keiju> >
keiju> > def cos(t) sqrt(1 - sin(t) ** 2) end
keiju> >
keiju> >でバランスさせる等の工夫も必要そうだし、、
keiju> ># Float を越える精度で sin() を得たい人がいるかは疑問 ^^)l
keiju>
keiju> うーん.(^^;;;
この用途には、代数式クラスの方が適用用途が広そうですね。
% ruby -rM -e 'a = 1 + PI + 3;p a; puts a'
(add 4 PI)
(4 + PI)
% ruby -rM -e 'a = 1 / 2 * 3 / 4;p a; puts a'
(div 3 8)
3 / 8
% ruby -rM -e 'a = "x" + 1 / 2 * "y";p a; puts a'
(div (add 0 (mul 2 "x") "y") 2)
(2 * x + y) / 2
こんな事が出来るライブラリを作りました。
今のところ
+ 四則
+ Neg (x * -1)
+ 通分
+ 約分
+ 文字式
+ 定数 PI
に対応しています。
ゆくゆくは、
+ 初等関数
+ 複素数
+ 素因数分解
のサポートぐらいは目指したいです。
#式の変形の気息をハードコードしてるのが難点 ^^;;
M.rb の公開は ML より ftp の contrib の方は良いでしょうか?
% wc M.rb
389 1332 8733 M.rb
です。
えぐち