[#34194] File.read (または String#include?) でSEGV — wanabe <s.wanabe@...>
ワナベと申します。
[#34200] Resolv.getaddress がエラーになる — "Kouhei Yanagita" <yanagi@...>
柳田です。
[#34239] MVM interface draft — Nobuyoshi Nakada <nobu@...>
なかだです。
[#34261] ComplexFloat — "Kenta Murata" <muraken@...>
村田です.
村田です.
なかだです。
むらたです.
こんにちは、なかむら(う)です。
むらたです.
こんにちは、なかむら(う)です。
むらたです.
In article <761216ce0804100221x67f10f12iab12b0e35b6f50e4@mail.gmail.com>,
むらたです.
まつもと ゆきひろです
利点としては、拡張ライブラリが書きやすい、ということ。正当化の理由とし
むらたです.
> 私にはいびつな進化という感じはしません.むしろ,せっかく C で実装できるのに
むらたです.
まつもと ゆきひろです
むらたです.
まつもと ゆきひろです
むらたです.
まつもと ゆきひろです
むらたです.
In article <761216ce0804120723n16bfbad7qdae90f142978d256@mail.gmail.com>,
むらたです.
In article <761216ce0804121011h6132d58fh4916ecbb29d58690@mail.gmail.com>,
むらたです.
In article <761216ce0804121039l605a8ec6sebe52afdbbb52160@mail.gmail.com>,
むらたです.
まつもと ゆきひろです
むらたです.
まつもと ゆきひろです
むらたです.
原です。
まつもと ゆきひろです
遠藤と申します。
原です。
In article <4808653F.80607@blade.nagaokaut.ac.jp>,
原です。
> 1. ComplexFloat を組込みにし、Complex を標準ライブラリとして提供する。
原です。
> 分かりににくかったですが、これは、ComplexFloat を含めた組込みの数体系が
こんばんは sheepman です。
まつもと ゆきひろです
けいじゅ@いしつかです.
まつもと ゆきひろです
けいじゅ@いしつかです.
まつもと ゆきひろです
けいじゅ@いしつかです.
原です。
けいじゅ@いしつかです.
Complex と ComplexFloat とクラスをふたつに分ける理由がどうに
原です。
まつもと ゆきひろです
原です。
[#34266] Ruby1.9 での $SAFE==4 時の autoload 動作 — Hidetoshi NAGAI <nagai@...>
永井@知能.九工大です.
[#34272] patch for [ruby-core:14537] — wanabe <s.wanabe@...>
ワナベと申します。
[#34278] Re: [ruby-cvs:23187] Ruby:r15947 (trunk): * lib/generator.rb: removed obsolete library. [ruby-core:16233] — SASADA Koichi <ko1@...>
ささだです.
まつもと ゆきひろです
[#34285] Complex#scalar? returns false — "Kenta Murata" <muraken@...>
むらたです.
[#34313] Enumerable#find_index vs. Array#index — "Akinori MUSHA" <knu@...>
[ruby-talk:178495] が発端で Enumerable#find_index というのが
まつもと ゆきひろです
[#34352] patch for — wanabe <s.wanabe@...>
ワナベと申します。
[#34391] Preparing for 1.8.7-preview1 — "Akinori MUSHA" <knu@...>
延び延びになってしまいましたが、ようやく enumerator 関連、
[#34393] fluent comma — "Yusuke ENDOH" <mame@...>
遠藤と申します。
[#34402] OpenSSL::SSL::SSLContext#set_params — Kazuhiro NISHIYAMA <zn@...>
西山和広です。
[#34430] str_new() may create broken string — wanabe <s.wanabe@...>
ワナベと申します。
[#34460] patch for ruby-dev:34236 — wanabe <s.wanabe@...>
ワナベと申します。
[#34476] coerce with Rational and Complex — "Yusuke ENDOH" <mame@...>
遠藤と申します。
[#34512] [ruby-core:16238]の検証 — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
[#34515] M17N のリファレンス — sheepman <sh@...>
こんにちは sheepman です。
[#34540] 0**-1 == 0 ? — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
ささだです。
[ruby-dev:34364] Re: ComplexFloat
まつもと ゆきひろです
In message "Re: [ruby-dev:34362] Re: ComplexFloat"
on Sat, 12 Apr 2008 23:23:20 +0900, "Kenta Murata" <muraken@gmail.com> writes:
|> 単純さや他のクラス構成との整合性を犠牲にしてまで閉じた複素数
|> クラスを別に用意すべき理由は最適化だけですか?
|
|最大の理由は最適化です.以下のような理由もあります.
|
|成分が浮動小数点になってしまうと,その値は他の表現に暗黙に変換できません.
|言い換えると,浮動小数点数を持つ複素数は,Rational や Integer を持つ複素数を
|全部食べてしまうんです.それだけでなく,たとえば CMath.sin,CMath.exp などの
|数学関数の結果は浮動小数点数を持つ複素数になるので,生成される複素数の多くが
|浮動小数点数を持つことが予想できます.
|
|ほとんどの Complex の成分が浮動小数点数なんだし,浮動小数点数から他の型には
|変換されないんだから,ComplexFloat として特殊化しても良いだろうとも考えています.
この辺が発想の違いで、私の考えでは、最適化というのはあくまでも
実装の都合で、外に見えるのはかっこ悪いと思ってます。だから、
正直FixnumとBignumの区別もかっこ悪い。これはFixnumが即値であっ
た関係で回避できませんでした。
|現在の Complex は実部が Float で虚部が Rational のような状態になれます.
|ですから,Complex に対してそのような最適化を行うとすると,成分の型検査を
|実部・虚部に分けて毎回行う必要があります.ComplexFloat を導入すると,
|データフロー解析で確実に ComplexFloat になることが分かっている部分は
|型検査なしで最適化できます.
両成分がFloatであるComplexを作る時点でフラグを立てればよいこ
とではないんでしょうか。ほとんどの場合にはFloatなComplexは生
成時に分かっているんではないかと思うので。フラグが立っていれ
ば高速に計算できるのであれば、村田さんの希望する程度の最適化
は(わずかなビット演算の増加程度で)実現できそうな気がします。
まつもと ゆきひろ /:|)