From: EGUCHI Osamu Date: 1999-02-16T22:55:11+09:00 Subject: [ruby-dev:5166] Re: compare to NaN (Re: Re: call for finite/isnan testers) えぐち@エスアンドイー です。 >>> On Tue, 16 Feb 1999 19:02:02 +0900, keiju@Rational.Com (石塚圭樹 ) said: keiju> けいじゅ@日本ラショナルソフトウェアです. keiju> keiju> やはり溜ったメイルは返さないと(^^;;; おひさしぶりです。 keiju> In [ruby-dev :4990 ] the message: "[ruby-dev:4990] Re: compare to NaN keiju> (Re: Re: call for finite/isnan testers) ", on Feb/11 01:57(JST) EGUCHI keiju> Osamu writes: keiju> keiju> >えぐち@エスアンドイー です。 ... keiju> >昔、簡易CNCのGコードの解析部分を少しやりましたが、 keiju> >今はその方面から少しはなれています。#2軸の位置決め位は使いますが、、 keiju> >いまやっているマシンはエキタキシャル成長装置; シリコン関係です。 keiju> keiju> うーん. うーん. とにかくそういう関係のお方なんですね. リアルタイム系も keiju> オブジェクト指向を適用しようって話しはだんだん出てきているみたいですね. リアルタイムな制御系は、シュミレーションとは切っても切れない間柄なので、 オブジェクト指向的な物に対する感覚は、それほど違和感ないのではと思います。 サーボモータもソレノイドバルブも温調計も実体のあるオブジェクトなので、 コードを書く時に、名前の付け方で悩む必要はないです。 (^^) keiju> 私の回りでもチラホラそういう話しが出ていますが, 私は関わりたくないなと keiju> (^^;;; しくじると、人を殺してしまうのが難点ですね。 ^^; keiju> >丸めの事を考えると、真剣に2進でやるのでしょうが、 keiju> >その実装は、、それこそCでやりましょう。 keiju> keiju> 期待しています(^^;;; え゛ keiju> >アセンブラの基本的な比較命令で実装できるわけです。 keiju> keiju> はいはい. なるほど. keiju> keiju> >これのアイディアを借用したのが、前出のメールの keiju> >bigfloat.rb です。 keiju> keiju> なるほど. そうなっていますね. keiju> keiju> # それと比べると私のBigfloatはかなり汚い(^^;;; いえいえ、私はただ流し込んだだけですから。 keiju> >一瞬、上の順序で Array をレイアウトして実装しようと keiju> >考えましたが、桁上がりや正規化が面倒すぎるので(ボ)でした。:-) keiju> keiju> 実行速度を考えてもやめた方が良いですよね. 今回のはコストのかかる部分が, keiju> bignumに任されていますので, このままでも結構使いものになると思います. 倍々精度の浮動小数点が欲しい人には、このままでも 四則の環境は提供できたと思っています。(実用になるのか?) あと、754 の平方根や推奨関数の実装に掛かりたいです。 keiju> >ここでおっしゃる Real は抽象クラスですか? keiju> >それとも、インスタンスを作れる具象クラスですか? keiju> keiju> 後者で考えていました. 具体的には, ごとけんさんのメイルのリプライを参照 keiju> して下さい. keiju> keiju> # (予定) 了解。 keiju> >本当は、別個のところで開発されたクラスが keiju> >うまく折り合えると良いのですが、一般性を keiju> >シリアライズする機構が簡単には導き出せない様に keiju> >思えるので、『早い者勝ち』主義になるのは必然ですね。 keiju> keiju> そうですね. 今の考え方は完全にそうなっていますね. となると「早い者」の、高い汎用性を持っている事が期待されますね。 具体的に言うと「早い者」は「組み込みの数クラス」であり、 そこそこ効率の良い Bigfloat が存在していて、Float と Bigfloat の 関係は、Fixnum と Bignum の関係に対応づけられると言う 仕組みが座りが良いと思います。 keiju> >イメージとしては RCS に対する CVS の様な keiju> >並行開発/合成のモデルを実装できないでしょうか? keiju> keiju> うーん. わかるようなわからないような... イメージがアイディアに繋がりにくい典型でした。 ^^;;;; keiju> >Complex や Matrix の様なコンテナ風なクラスと keiju> >Integer, Float, Rational の様なスケーラなクラスで keiju> >大きく処理が異なるように思えるのですが、 keiju> >スケーラな方は Float <=> Bignum 問題さえなければ keiju> >有効数字の大きい方と言う一般則があるように思えます。 keiju> >#今後作るクラスもか?と言う質問には良い答えがないです。^^;; keiju> keiju> 典型的にはそうなんでしょうが, 何時もそうなかというと保証ができないよう keiju> な... いまの, coerceは正直いって面倒臭いですが, 多分適合不可能な数値関 keiju> 連クラスってのはないと思います. 有限長整数と有限長固定小数の間の演算結果は、 どちらにすべきかと言った場合に、答えの型は どちらでもなくなるような状況を想定しています。 えぐち #執筆ご苦労さまです。