永井@知能.九工大です.

From: matz / ruby-lang.org (Yukihiro Matsumoto)
Subject: [ruby-dev:17229] Re: safe-level
Date: Thu, 30 May 2002 15:31:19 +0900
Message-ID: <1022740279.275029.6063.nullmailer / picachu.netlab.jp>
matz> 現在の仕様は「Procは$SAFE状態を記憶している」です。つまり、
matz> $SAFEが高いところで生成されたProcを実行中にはProcの実行中に
matz> はその$SAFEになります。でも、実はProcの実行中に$SAFEを変更す
matz> ることは想定していませんでした。

そうですか.

matz> ということで、「正しい」と断言するほどその状態を考慮していた
matz> わけではありません。でも、現状はそうなってますし、そのほうが
matz> 便利ならそうしてもかまわないだろうなとは思います。

ということでしたら,ぜひ仕様として確定していただけますようお願いします.
一時的に safe level を変更して実行したい場合に
わざわざ thread を生成するよりは処理も軽そうです.
また,一つの thread での実行ですから,
今回の Tk の問題に見られるようなタイプの deadlock を
生じる可能性も低くなります.
仕様として公式に認められることで安心して利用できますし,
これを仕様とすることによって生じる障害もなさそうです.

では,仕様として確定するものと信じて(^_^),
Tk のメンテ作業を進めることにします.
-- 
                                         永井 秀利 (九工大 知能情報)
                                             nagai / ai.kyutech.ac.jp