[前][次][番号順一覧][スレッド一覧][生データ]

yarv-dev:389

From: Hiroki Asakawa <ml asakawa.net>
Date: Mon, 20 Dec 2004 20:06:13 +0900
Subject: [yarv-dev:389] Re: IronPython

淺川です。

>  Fixnum#< を再定義できますか?
プログラム全体にわたって、着目している演算子が再定義されて
いない場合にインライン化しています。
ただその場合、例えばRubyプログラムををコンパイルしてdllを作成し、
そのdllを違うRubyプログラムから使う場合、後のRubyプログラムで
再定義されたのがdllの中の演算に反映されなくなってしまうので、
コンパイルオプションで選択できるようにしています。

>  ただ,プリミティブ型を利用する場合,自動的に Bignum に拡張す
> る工夫は必要になるかとは思いますが.
>  あ,コンテナに入れるとか,どうのってのが面倒になったりするん
> だろうか..NET だと.
Fixnumをプリミティブ型にするのは難しいです。
自動でBignumにするのは IL で演算でのオバーフローを検出できるので
できないことはないですが、メソッドの実行だとか、引数に渡したりだとか
戻り値に返したりだとか、、それにコンテナに入れるのもコストがかかるように
なりますね。
この関係で true や false や nil もオブジェクトにしました。
結局プリミティブ型は全くないことに。。




      w        
    Σ+ )_       Hiroki Asakawa
  〜〜( __/〜     mailto:hiroki asakawa.net
   〜〜〜〜〜     http://www.asakawa.net



--
ML: yarv-dev quickml.atdot.net
使い方: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧][生データ]

       380 2004-12-20 00:33 [ko1 atdot.net       ] IronPython                              
       381 2004-12-20 00:40 ┗[shudo computer.org  ]                                       
       382 2004-12-20 08:44  ┣[ml asakawa.net      ]                                     
       383 2004-12-20 11:07  ┃┣[shudo computer.org  ]                                   
       390 2004-12-20 20:16  ┃┃┗[ml asakawa.net      ]                                 
       386 2004-12-20 18:38  ┃┗[ko1 atdot.net       ]                                   
->     389 2004-12-20 20:06  ┃ ┗[ml asakawa.net      ]                                 
       385 2004-12-20 18:31  ┗[ko1 atdot.net       ]                                     
       388 2004-12-20 18:46   ┗[matz ruby-lang.org  ]