From: Yugui Date: 2010-01-04T21:04:09+09:00 Subject: [ruby-dev:39962] Re: Fwd: [ruby-cvs:33451] Ruby:r26235 (trunk): * trace.h: new file. wraps tracing mechanisms. 2010/1/4 Yusuke ENDOH : > ○ LIKELY / UNLIKELY の名前がまずい (重大) > > RB_LIKELY など、他のライブラリと衝突しなさそうな名前にする必要があります。 > > また、ruby.h に書かれるということは、LIKELY / UNLIKELY は公開 API なの > でしょうか (個人的には、ruby.h に書かれているだけでは公開 API ではないと > 思っていますが、Yugui さんの考えではそうではなさそうなので) 。 > とりあえず /** @internal */ とかつけるとどうでしょう。 名前の変更も、internalであることも同意します。 別にruby.hに非公開のものが入ってるのは構わないんですが、それならそうと明記して貰わないと外部で知らずに使ってしまうことを防げないので 書くべきだというのが私の主張です。それに基づくと、今回のそれは書くべきですね。 > ○ RUBY_EVENT_RESCUE が追加された (やや重大) > > これは dtrace に関係なく set_trace_func でも見える API レベルの変更です。 あー、確かに。隠したほうが良いのか、それともRubyレベルからも用途はあるのか。 > - これで得られる binding は使っても大丈夫? (SEGV とかしない?) 隠した方がよいのかも知れません。 > ○ UNLIKELY が使われているところと使われていないところがある それは付け忘れです。 > ○ rb_class2name_without_alloc はなぜ必要か > > variable.c に rb_class2name_without_alloc という関数が追加されています > が、grep しただけではどこで使われているのかわかりませんでした。 > これは今回の変更で一緒に追加する必要があったのでしょうか。 ん! macrubyと同じようにobject-freeでクラス名を渡すほうがよかろうと思って、使い忘れておりました。 > ○ thread_pthread.c に probe を入れるのは OK ? 別にさしておかしくはないと思いますが、 > ruby_fatal_exit とか作って、従来異常終了の文脈で exit を読んでいる箇所 > では全部 ruby_fatal_exit を呼ぶようにしたらどうでしょう。 このほうがより良いですね。そうしましょう。 > ○ probe 拡張ライブラリが荒削り > > usa さんの突っ込みに同意です。 [ruby-dev:39958] 私も同意します。そうしましょう。 -- Yuki Sonoda (Yugui) yugui@yugui.jp http://yugui.jp