[#3564] ruby home page moved — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#3567] Nil is a subclass of Object? — shugo@... (maeda shugo)
前田です。
まつもと ゆきひろです
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
[#3608] We have access to Nil on ruby 1.0 — shugo@... (maeda shugo)
前田です。
[#3614] [Request] File.readlines — keiju@... (Keiju ISHITSUKA)
けいじゅ@いそうろう.日本ラショナルです.
まつもと ゆきひろです
[#3616] ftplib.rb — shugo@... (maeda shugo)
前田です。
[#3629] LaTeX ruby documents — Eiji-usagi-MATSUmoto <ematsu@...>
うさぎです。
[#3638] ftplib.rb & ftpmirror — shugo@... (maeda shugo)
前田です。
[#3676] MSVC compile error — toyofuku@...
豊福@パパイヤです。
[#3689] [BUG] inspect — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルです.
[#3690] new sync.rb release — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルです.
前田です。
[#3693] ftplib.rb revision 1.4 — shugo@... (前田 修吾 / maeda shugo)
前田です。
[#3714] ruby 1.0-970819 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#3715] may i make a ruby.rpm? — Shoichi OZAWA <ozawa@...>
こんにちは 小澤@日立 です。
まつもと ゆきひろです
小澤@日立 です。
[#3736] module for GNU Readline Library — shugo@... (前田 修吾 / maeda shugo)
前田です。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
[#3738] [BUG] a[0] += 1 (ruby-1.0-970820) — WATANABE Hirofumi <watanabe@...>
わたなべです.
まつもと ゆきひろです
[#3749] regex? (ruby-1.0-970820) — jkuro@... (Jun Kuroda)
黒田です。
[#3769] link image for ruby — shugo@... (前田 修吾 / maeda shugo)
前田です。
原です。
まつもと ゆきひろです
前田です。
[#3773] PostgreSQL module is released. — Eiji-usagi-MATSUmoto <ematsu@...>
うさぎです。
[#3785] rbdj0821.zip, rbgw0821.zip — WATANABE Hirofumi <watanabe@...>
わたなべです.
まつもと ゆきひろです
[#3786] [Q] How to open — Shin-ichiro Hara <sinara@...>
原です
助田です
原です。
[#3812] SyslogSendmail class — takagi@... (TAKAGI Hiromitsu)
【皆で学ぼうシリーズ(1)】
[#3819] multi-dimensional array — aito@...5sun.yz.yamagata-u.ac.jp
こんにちは,あ伊藤@山形大学です.
[#3833] [Bug] Regexp.quote — shugo@... (前田 修吾 / maeda shugo)
前田です。
助田です。
まつもと ゆきひろです
助田です
けいじゅ@日本ラショナルです.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです.
けいじゅ@日本ラショナルソフトウェアです.
[#3839] Re: SyslogSendmail class — takagi@... (TAKAGI Hiromitsu)
> そうですね.本当はこーゆーのが ruby-list の本来の形ですね.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
前田です。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
前田です。
[#3868] call for impression — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#3869] Re: SyslogSendmail class — takagi@... (TAKAGI Hiromitsu)
> Moduleのところに書いてあるんですねえ.こういうノウハウを記述
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
[#3872] Re: SyslogSendmail class — takagi@... (TAKAGI Hiromitsu)
> | attr [:date, TRUE], [:time], [:process_name, TRUE]
前田です。
まつもと ゆきひろです
[#3892] manual html by lynx — Kikutani Makoto <kikutani@...>
きくたにです。
[#3901] class variable — toyofuku@...
豊福@パパイヤです。
まつもと ゆきひろです
前田です。
[#3906] document for beginner — toyofuku@...
豊福@パパイヤです。
きくたにです。
助田です
Fri, Aug 29, 1997 at 12:54:15PM +0900 において
助田です
きくたにです。
まつもと ゆきひろです
[#3933] Re: ruby constants — toyofuku@...
豊福@パパイヤです。
まつもと ゆきひろです
わたなべです.
わたなべです.
まつもと ゆきひろです
わたなべです.
> これは ANSI C でも使えます.
まつもと ゆきひろです
[#3951] Re: document for beginner — toyofuku@...
豊福@パパイヤです。
[ruby-list:3711] Re: new sync.rb release
けいじゅ@日本ラショナルです.
In [ruby-list :03709 ] the message: "[ruby-list:3709] Re: new sync.rb
release ", on Aug/19 13:03(JST) shugo@po.aianet.ne.jp (前田 修吾/
maeda shugo) writes:
>前田です。
>|前田さんがいなくて淋しかったです(^^;;;
>どうもです:-)
復活するなりすごいものを出してきましたねえ(@@;;;
>|SynchronizableはSynchronizerを利用して(デレゲートタイプの利用ですね)実
>|現しているのに対して, 逆に, SyncはSync_mをインクルードして実現していま
>|す. 結局同じことを実現するのに反対のやりかたをしています.
>
>まさかSyncがこうなるとは思っていなかったもので(^^;
新版Mutex_m を作った時から, Mutexもこのようにして実現できると思ってい
たのもありますし, 結構複雑なので2つ同じようなものは必要ないと思いまし
たし...
# Mutex_m::For_primitive_objectとMutex_m::For_general_objectは, 同じア
# ルゴリズムを含んでしますが, Sync_m::XX では, polymorphを使って1つに
# まとめました(^^;;;
>extend_objectをオーバーライドして初期化処理をしてるんですね。
>このワザいただきます:-)
あ? これは, 前から公開されているんですけどね. ここでは, 実際にextendす
るクラスをすり替えてしまっているところが技ですね(^^;;;
>でもincludeした時はやはりinitializeでsyns_extendedしないといけないのか...。
>これはincludeをClassで再定義しちゃうしかないのかな。
ああ. includeして利用することを考えてなかったもので, includeには全然対
応できていないですね(^^;;;
>class Class
(ここから省略)
>Thread.join t
>
>なんてのも動いてしまいました。
>newの引数が違うとちゃんとArgumentErrorになりますね。
なかなかものすごいですね(@@;;;; こういうプログラム非常に好みなんですが...
とはいえ, 気になる点が少しあります.
1. includeをoverrideするのはちょっと...
以前, extendと同様にincludeもフックが欲しいという話しがあったのですが,
結局採用になりませんでした. このような大きな変更にはrubyの作者の意向に
したがった方が良いんじゃないかなあ... という思いがあります.
# 元メイルが見つからん... extendのhookの話しは見つかったのですが...
# 再度議論して仕様に入れてもらうというてもありますが(^^;;;
とはいえ includeで Sync_m::For_primitive_object はすかないので,
class Spokesperson < String
Sync_m.included_to self
# or inclued Sync_m.includable
こんな感じのインターフェイスになってしまいますが...
ところで, 前田さんのは:
>class Spokesperson < String
> include Sync_m::For_primitive_object
としていますが,
class Spokesperson < String
include Sync_m
としても動作しますよね? この辺りは, include-hookの効果が出てていいとこ
ろですねえ...
# やはり, include-hookが欲しいなあ >>> 松本クーン!!
2. superが使える
前田さんのプログラムは, include時にnewをoverrideしていますが, ここまで
は必要ないんじゃないでしょうか?
通常, インスタンスの初期化時に, 上位クラスでの初期化を行いたい場合は
superを使うことになっているので, superで初期化できるようになっていれば
文句はないと思います.
ということで,
class Spokesperson < String
Sync_m.included_to self
def Spokesperson.new
super.new.initialize
end
# String newはinitializeしてくれないらしいので追加, 一般クラスなら
# ば必要なし
#def ininitalize
# super
#end
# newをoverrideしているので必要なし. 一般クラスの場合こちらが必要.
end
というインターフェイスでは不満でしょうか?
__
..........................................石塚 圭樹@日本ラショナル...
----------------------------------->> e-mail: keiju@bc.mbn.or.jp <<---