[ruby-list:619] Re: meta-level features(Re: bug? and question)

From:
Date: 1996-09-26 13:47:27 UTC
List: ruby-list #619
けいじゅ@SHLジャパンです. 

In [ruby-list :00591 ] the message: "[ruby-list:591] Re: meta-level
features(Re: bug? and question) ", on Sep/26 12:19(JST)
matz@caelum.co.jp (Yukihiro Matsumoto) writes:

メイルの順番をちょっと入れ換えています.

>つまり上で述べたように開発環境と実行環境が一体化したモデルを
>仮定しているが,現在のrubyが仮定しているモデルはそれらが分離
>したモデルだし,今後も変えるつもりが無いからです.

いやいや. わたしもそれで良いと思っています.

私が求めているのは, できるだけ使いやすい開発環境なので, それさえ実現で
きればよいです.

以下のようなモデルを考えてみましょう. 

  env.rb ---> ruby -d app.rb

デバッグモードで動いている ruby対してに開発環境側(env.rb)から指示を与える. 

>|いや. そうなんです. いいたかったのはそういう機能があれば, 一体化するこ
>|とも可能かな? と思ったわけです.
>
>うーん,rubyのような言語で一体化するメリットって見当たりませ
>んね.lispやsmalltalkとは使われ方からして違うでしょう.ruby
>で開発環境を書くことはあっても,実行環境は分離しておいた方が
>良いように感じています.

ちょっと表現が悪かったですね. rubyでrubyの開発環境を作るのはいいとして, 
そういった機能があると, 開発環境と実行環境の橋渡しがよりスムーズになる
のでは? といいたかったわけです.

純粋にアプリケーションとしての開発環境を考えた場合, デバッグ中にソース
コードを書き換えて引続き実行できるような環境は理想的ですからね. 最初に
述べたようなモデルで, 上記のようなことが実現できるにはどうしたら良いか
ということを考えていました.

# この様なレベルの環境も必要ないといっていたりして...

>今後のデバッガの設計にもかかわってきますんで,ちょっと検討さ
>せてください.

それもそうですね.

>|ついでに, 現在実行しているファイルの行番号が分かる変数なんかもお願いし
>|ます.
>これはcaller(0)で得られます.

そうでしたね. でも, セグメンテーションフォールトとかで落ちる時には使え
なかった気がします. やはり, SEGVとかはtrapしても無理なんですかねえ... 
rubyの内部でSEGVとかで落ちる時のデフォルトの動作として, 行番号のスタッ
クトレースを表示してコアダンプしていただくという対応でも嬉しいです.

>存在しないメソッドを呼び出すとmethod_missingというメソッドが
>呼び出されます.これのデフォルトの定義が例外を発生させていま
>す.使い方はdesNotUnderstandと同じです.
>tk.rbなんかこれを使っていますね.

なるほど. わかりました.


__
..........................................石塚 圭樹@SHLジャパン(株)...
------------->アドレス変わりました!! e-mail: keiju@shljapan.co.jp <----

In This Thread

Prev Next