[#34] [Bug] Class#superclass — shugo@... (maeda shugo)
前田です。
[#49] Re: Nil is a subclass of Object? — shugo@... (maeda shugo)
前田です。
[#50] Re: [ruby-list:3596] Module#attr specification (Re: boolean values) — keiju@... (石塚圭樹 )
けいじゅ@日本ラショナルです.
前田です。
まつもと ゆきひろです
わたなべです.
[#53] About C struct who has references to ruby objects — shugo@... (maeda shugo)
前田です。
[#58] Re: Nil is a subclass of Object? — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#78] [Bug] Socket#send, Socket#recvfrom — shugo@... (maeda shugo)
前田です。
[#97] Re: meta programming features — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#115] Re: meta programming features — WATANABE Hirofumi <watanabe@...>
わたなべです.
[#117] Re: tail recursion (Re: LaTeX ruby documents) — keiju@... (石塚圭樹 )
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
[#121] Re: meta programming features — keiju@... (石塚圭樹 )
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
[#127] tracer — keiju@... (Keiju ISHITSUKA)
けいじゅ@いそうろう.日本ラショナルです.
まつもと ゆきひろです
けいじゅ@いそうろう.日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
わたなべです.
まつもと ゆきひろです
わたなべです.
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
[#167] argument default value — shugo@... (前田 修吾 / maeda shugo)
前田です。
[#185] Re: [ruby-list:3720] Re: Class#eval [Re: ftplib.rb revision 1.4] — keiju@... (石塚圭樹 )
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
まつもと ゆきひろです
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
けいじゅ@やっと自オフィス.日本ラショナルです.
まつもと ゆきひろです
まつもと ゆきひろです
[#189] include [Re: new sync.rb release] — keiju@... (石塚圭樹 )
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
[#221] '@' in yylex() — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
[#228] How to handle Struct — Eiji-usagi-MATSUmoto <ematsu@...>
うさぎです。
[#232] ruby for mswin32 1.1a1差分 — KIMURA Koichi <kkimura@...>
木村 です。
[#257] [BUG] MLF — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
けいじゅ@日本ラショナルです.
[#276] Re: SyslogSendmail class — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#291] illegal here document — shugo@... (前田 修吾 / maeda shugo)
前田です。
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
わたなべです.
[#309] [BUG] method index — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
[#313] ruby 1.1a4 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#330] [BUG] Module#methods — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
[ruby-dev:146] Re: meta programming features
まつもと ゆきひろです
In message "[ruby-dev:137] Re: meta programming features"
on 97/08/15, 石塚圭樹 <keiju@bc.mbn.or.jp> writes:
|けいじゅ@日本ラショナルです.
|> * 特異メソッドが定義されているオブジェクトに対しては特異メ
|> ソッドを返し,そうでないオブジェクトに対しては通常のクラ
| ^^^^^^^^
| 特異クラスですね?
です.間違いですね.
|この問題は,
|
| class << foo ... end
|
|がある限り解決しないと思いますが...
これはclass << fooの構文内では仮想的なクラスを見せているだけ
だ,というモデルを採用することにします.つまり,現在の実装で
は特異クラスを使っているが言語の採用しているモデルでは必ずし
も特異クラスの存在する必要はないと言うことで.
ついでに,この仮想クラス(特異クラスのこと)のインスタンスを作
ることと,サブクラスを作ることを禁止するようにしましょうね.
|そういったわけで, Object#eval() も通常クラスへの登録が基本で良いと思う
|んですが...
というかやっぱり関数的な eval に求められる挙動とfoo.evalの形
で呼ばれることを想定した時に求められる挙動とではかなり違って
いるように思います.
たとえば定数アクセスを例にとると
* 関数的アクセスの場合には呼ばれた時点での静的なスコープも
参照して,「その場所にコードがあったのと同じ動作」を実現
して欲しい.
* メソッド的アクセスの場合には(そのインスタンス内部からの
アクセスということで)適切な静的なスコープは存在しないだ
けでなく,メソッド呼び出し元のスコープを参照するべきでは
ない
という違いがあります.これは定数の定義や,メソッドやクラスな
どの定義に関してもいえることです.
ですから,「そのインスタンスのスコープでevalするメソッド」を
用意するにしても,現状のevalと共有することは(おそらく)不可能
だと思います.せめて,名前を変える必要があるのでは.
|特異メソッドが存在するか調べる方法があれば, foo.eval("def foo.f...")
|を使えるのですが...
foo.respond_to?("f") と foo.type.methods.include?("f") を組
み合わせると調べられるのでは?
まつもと ゆきひろ /:|)