[#352] ruby 1.1a5 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
38 messages
1997/09/01
[#353] Re: ruby 1.1a5 released
— keiju@... (石塚圭樹 )
1997/09/01
[#354] Re: ruby 1.1a5 released
— matz@... (Yukihiro Matsumoto)
1997/09/01
まつもと ゆきひろです
[#355] methods [Re: ruby 1.1a5 released]
— keiju@... (石塚圭樹 )
1997/09/01
けいじゅ@日本ラショナルソフトウェアです.
[#356] Re: methods [Re: ruby 1.1a5 released]
— matz@... (Yukihiro Matsumoto)
1997/09/01
まつもと ゆきひろです
[#357] Re: methods [Re: ruby 1.1a5 released]
— keiju@... (Keiju ISHITSUKA)
1997/09/01
けいじゅ@日本ラショナルソフトウェアです.
[#359] Re: methods [Re: ruby 1.1a5 released]
— matz@... (Yukihiro Matsumoto)
1997/09/02
まつもと ゆきひろです
[#363] Re: methods [Re: ruby 1.1a5 released]
— matz@... (Yukihiro Matsumoto)
1997/09/02
まつもと ゆきひろです
[#374] Re: methods [Re: ruby 1.1a5 released]
— matz@... (Yukihiro Matsumoto)
1997/09/02
まつもと ゆきひろです
[#376] Re: methods [Re: ruby 1.1a5 released]
— keiju@... (Keiju ISHITSUKA)
1997/09/02
けいじゅ@日本ラショナルソフトウェアです.
[#382] Re: methods [Re: ruby 1.1a5 released]
— matz@... (Yukihiro Matsumoto)
1997/09/02
まつもと ゆきひろです
[#390] Re: methods [Re: ruby 1.1a5 released]
— keiju@... (Keiju ISHITSUKA)
1997/09/03
けいじゅ@日本ラショナルソフトウェアです.
[#391] Re: methods [Re: ruby 1.1a5 released]
— matz@... (Yukihiro Matsumoto)
1997/09/03
まつもと ゆきひろです
[#405] nesting [methods [Re: ruby 1.1a5 released]]
— keiju@... (石塚圭樹 )
1997/09/04
けいじゅ@日本ラショナルソフトウェアです.
[#406] Re: nesting [methods [Re: ruby 1.1a5 released]]
— matz@... (Yukihiro Matsumoto)
1997/09/04
まつもと ゆきひろです
[#411] Re: nesting [methods [Re: ruby 1.1a5 released]]
— keiju@... (石塚圭樹 )
1997/09/04
けいじゅ@日本ラショナルソフトウェアです.
[#358] defined? — keiju@...
けいじゅ@日本ラショナルソフトウェアです.
7 messages
1997/09/01
[#389] ruby 1.1a6 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
6 messages
1997/09/03
[#417] [BUG] *methods — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
6 messages
1997/09/04
[#418] building ext modules — Eiji-usagi-MATSUmoto <ematsu@...>
うさぎです。
7 messages
1997/09/05
[#431] [Q] socket on ruby(mswin32) — Masaki Suketa <suke@...>
助田です。
9 messages
1997/09/09
[#441] How to report a bug — takagi@... (TAKAGI Hiromitsu)
Bus error が出ました。
15 messages
1997/09/09
[#447] Re: How to report a bug
— matz@... (Yukihiro Matsumoto)
1997/09/10
まつもと ゆきひろです
[#461] [Q] ruby-socket(mswin32) — Masaki Suketa <suke@...>
助田です
27 messages
1997/09/11
[#462] Re: [Q] ruby-socket(mswin32)
— matz@... (Yukihiro Matsumoto)
1997/09/11
まつもと ゆきひろです
[#463] Re: [Q] ruby-socket(mswin32)
— Masaki Suketa <suke@...>
1997/09/11
助田です
[#464] Re: [Q] ruby-socket(mswin32)
— matz@... (Yukihiro Matsumoto)
1997/09/11
まつもと ゆきひろです
[#467] Re: [Q] ruby-socket(mswin32)
— WATANABE Hirofumi <watanabe@...>
1997/09/11
わたなべです.
[#468] Re: [Q] ruby-socket(mswin32)
— matz@... (Yukihiro Matsumoto)
1997/09/11
まつもと ゆきひろです
[#469] Re: [Q] ruby-socket(mswin32)
— WATANABE Hirofumi <watanabe@...>
1997/09/11
わたなべです.
[#475] Re: [Q] ruby-socket(mswin32)
— WATANABE Hirofumi <watanabe@...>
1997/09/11
わたなべです.
[#476] Re: [Q] ruby-socket(mswin32)
— Masaki Suketa <suke@...>
1997/09/12
助田です。まとめてレスします。(ちょっと長いです)
[#477] Re: [Q] ruby-socket(mswin32)
— WATANABE Hirofumi <watanabe@...>
1997/09/12
わたなべです.
[#489] [BUG] thread? — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
5 messages
1997/09/16
[#499] parser bug — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
8 messages
1997/09/18
[#501] MethodIndex — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
5 messages
1997/09/18
[#522] Re: Assigne to special variable — "EGUCHI Osamu" <eguchi@...>
えぐち です。
12 messages
1997/09/24
[#571] dbmtest.rb — Masaki Suketa <suke@...>
いまだ ruby(Perl?) のソースコード追っかけてる時間の方が長い
11 messages
1997/09/30
[#572] Re: dbmtest.rb
— WATANABE Hirofumi <watanabe@...>
1997/09/30
わたなべです.
[#573] Re: dbmtest.rb
— matz@... (Yukihiro Matsumoto)
1997/09/30
まつもと ゆきひろです
[#585] Re: optimize (Re: Assigne to special variable) — "EGUCHI Osamu" <eguchi@...>
えぐち です
4 messages
1997/09/30
[#594] BUG?(marshal) — Masaki Suketa <suke@...>
以下のプログラムを実行した時に(3)と(4)で出力結果が違います。
17 messages
1997/09/30
[#595] Re: BUG?(marshal)
— matz@... (Yukihiro Matsumoto)
1997/09/30
まつもと ゆきひろです
[#596] Re: BUG?(marshal)
— WATANABE Hirofumi <watanabe@...>
1997/09/30
わたなべです.
[#601] Re: BUG?(marshal)
— Masaki Suketa <suke@...>
1997/10/01
助田です。
[#602] Re: BUG?(marshal)
— matz@... (Yukihiro Matsumoto)
1997/10/01
まつもと ゆきひろです
[ruby-dev:374] Re: methods [Re: ruby 1.1a5 released]
From:
matz@... (Yukihiro Matsumoto)
Date:
1997-09-02 07:12:03 UTC
List:
ruby-dev #374
まつもと ゆきひろです
In message "[ruby-dev:370] Re: methods [Re: ruby 1.1a5 released]"
on 97/09/02, 石塚圭樹 <keiju@bc.mbn.or.jp> writes:
|けいじゅ@日本ラショナルソフトウェアです.
|>という仕様になっています.どうも,これでは足りないようなので
|>すが,どう足りないのか,ということについて議論したいです.あ
|>るオブジェクトの特異メソッドを返すメソッド(あるいはオプショ
|>ン)があればそれで済む問題なんですか?
|
|少なくともそれは欲しいですね. あと,
|
|* オブジェクトのプライベートな特異メソッドを返す関数
|
|も欲しいですね.
うーん,メソッドは
* 特異メソッド
* そのオブジェクトのクラスで定義されているもの
* そのクラスに継承やincludeで取り込まれているもの
にわけられると思いますが(それぞれにpublic/privateがある),
* 全部を得る
* 特異メソッドだけを得る
* あるクラス/モジュールで定義されているメソッドだけをとる
があれば良いのかな.どう思います?
とすると,
Objcet#methods(全部のメソッドのリスト)
Object#private_methods(全部のメソッドのリスト)
Module#instance_methods(そのクラスのメソッド)
Module#private_instance_methods(そのクラスのメソッド)
Objcet#singleton_methods(特異メソッドだけ)
class << obj; self.instance_methods end と同じ
で,どうかな,と思うんですけど.privateな特異メソッドは
class << obj; self.private_instance_methods end
で対応しようかな,と思います.
|あと, もしやって頂けるなら,
|
|* その(クラスのインスタンス|オブジェクト)が分かるメソッドとそれが実際
| にどのクラスで定義されているかの組みを返してくれるメソッド
|
|があるとベストですが, methods関連メソッド群とancestorsがあれば作ること
|ができますので, 無理はいいません.
これはmetap.rbででも対応しましょうか.
書いて下さるんでしたら,取り込みますが.
|* ancestorsに相当する, 定数の参照パスを返すメソッド
|* か, 静的スコープのパス(これは分かるのかな? 文字列ベースだけど)
|
|が必要ですね. 後者は優先順位の判断はこちらで行うことになるので若干面倒
|ですが, ancestorsの機能と重複していないのでその方が良いかも...
後者は採用しましょう.
|つぎに, 将来的なことも考えて, クラスのブラウジングツールを作るという視
|点から見ると,
|
|* あるクラスから直接includeしているモジュールを調べるメソッド(優先度順)
|* あるクラスのサブクラス群を取り出すメソッド
|
|は欲しいですね. 後者はスーパクラスが分かるのでそういう情報を作ることは
|できなくもないですが, 前者は今のところ無理ですよね.
ancestorsとkind_of?(Module)を組み合わせれば可能ですね.ただ
し,includeがあるところを完全に検出することは出来ませんけど
(すでにスーパークラスでincludeされていた場合,includeはなに
もしないから).
|あと, さらに要望を述べるなら, メソッド内部の情報になっていくと思います.
|
|* 定義されているクラス
|* メソッド名
ここまではまあ良いとして,
|* 引数の数
|* 使用しているインスタンス変数の一覧
|* 使用している定数の一覧
|* ローカル変数(およびプライベート呼びだしメソッド)の一覧
|* 呼び出しているメソッド名の一覧
|
|でも, ここまでは大変でしょ?
ええ,それにソースそのものに関する情報は内部的には持たないよ
うにしようと思っていますから,この辺は採用するつもりはありま
せん.ごめんね.
まつもと ゆきひろ /:|)