[#4013] regexp question — Kikutani Makoto <kikutani@...>
きくたにです。
まつもと ゆきひろです
[#4029] ruby-mode.el ... _end problem — Kikutani Makoto <kikutani@...>
ruby-mode.el ですが、
まつもと ゆきひろです
Tue, Sep 02, 1997 at 10:05:20AM +0900 において
まつもと ゆきひろです
Tue, Sep 02, 1997 at 10:30:01AM +0900 において
[#4047] make install prefix=hoge — Kikutani Makoto <kikutani@...>
きくたにです。
[#4053] How to 'break' inside case — Eiji-usagi-MATSUmoto <ematsu@...>
うさぎです。
[#4060] ruby-tk on Windows — Eiji-usagi-MATSUmoto <ematsu@...>
うさぎです。
まつもと ゆきひろです
>まつもと ゆきひろです
助田です
わたなべです.
助田です
助田です
原です。
まつもと ゆきひろです
わたなべです.
まつもと ゆきひろです
まつもと ゆきひろです
酒本です。
わたなべです.
助田です。
In message "[ruby-list:4169] Re: ruby-tk on Windows"
原です。
わたなべです.
まつもと ゆきひろです
わたなべです.
まつもと ゆきひろです
わたなべです.
まつもと ゆきひろです
[#4066] ~ (tilde) — Kikutani Makoto <kikutani@...>
きくたにです。
[#4076] which icon is the best? — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#4083] ruby 1.0-970903 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
小澤@日立 です。
[#4109] can not install 1.0-970903 — Eiji-usagi-MATSUmoto <ematsu@...>
うさぎです。
まつもと ゆきひろです
うさぎです。
大庭@鉄工所です.
[#4126] How to get value (ruby/tk) — Noritsugu Nakamura <nnakamur@...>
あ伊藤です.
まつもと ゆきひろです
[#4145] byte code compiler ? — Kikutani Makoto <kikutani@...>
rubyのインタープリタって、いったん中間コードに変換してから
[#4151] "autoload": NameError ... — taizo@... (Yamamoto Taizou)
[#4164] configure option --bindir= — Noritsugu Nakamura <nnakamur@...>
[#4201] Mini ML Program — Yasunari Momoi <conan@...>
ももちゃん@あるもにこすです.
きくたにです。
まつもと ゆきひろです
[#4211] subscribe — abe@...
阿部雅之と申します。
[#4236] tk sample die — Kikutani Makoto <kikutani@...>
あれ、sampleのtk拡張がみんな動かなくなってしまった。why?
[#4245] ruby 1.0-970909 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#4258] class.new { ... } — Kikutani Makoto <kikutani@...>
きくたに@Tk拡張見習い中です。
[#4267] Sample Program ( mbox to INBOX ) — "nagano" <nagano@...>
長野@新日鉄情報通信システム と申します。
[#4272] [Q] tk ext... — Kikutani Makoto <kikutani@...>
きくたにです。
[#4278] Is there any english documentation ? [FreeBSD ports] — Eiji-usagi-MATSUmoto <ematsu@...>
うさぎです。
まつもと ゆきひろです
うさぎです。
まつもと ゆきひろです
うさぎです。
[#4287] Re: Sample Program ( mbox to INBOX ) — "nagano" <nagano@...>
長野です。
[#4309] Re: ruby small bugs — 渡辺博文 <VYV01212@...>
わたなべです.
[#4313] mail address class — akira yamada / やまだあきら <akira@...>
けいじゅ@日本ラショナルソフトウェアです.
けいじゅ@日本ラショナルソフトウェアです.
前田です。
前田です。
前田です。
前田です。
出沢@富士フイルムです
わたなべです.
[#4322] ftplib.rb with Win — Masaki Suketa <suke@...>
cygwin32 版 ruby を使って ftplib.rbの
[#4324] ruby seminar — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
前田です。
うさぎ@勤務地は西田幾太郎生誕の地です。
前田です。
小澤さくです.
うさぎです。
前田です。
うさぎです。
前田です。
[#4329] ruby mailing list sanka kibo. — ma2sim@...
[#4357] nif2news.rb — Kikutani Makoto <kikutani@...>
きくたにです。
前田です。
きくたにです。
まつもと ゆきひろです
[#4364] RE: Re: Mistake in turorial ??? — "EGUCHI Osamu" <eguchi@...>
> 助田です
[#4366] socket — Kikutani Makoto <kikutani@...>
きくたにです。
まつもと ゆきひろです
小澤@日立 です。
わたなべです.
わたなべです.
[#4448] ruby 1.0-970919 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#4449] Bug?? (ruby-1.0-970911) — Yuji Shigehiro <sigehiro@...>
ruby-1.0-970701 から, ruby-1.0-970911 にバージョンアップしたところ,
まつもと ゆきひろです
重弘です.
[#4468] Re: ruby 1.0-970919 released — 渡辺博文 <VYV01212@...>
わたなべです.
[#4474] ruby1.0(970919) for mswin32 — Masaki Suketa <suke@...>
助田です。ちょっと長いです。
[#4498] Re: tcltk library — 渡辺博文 <VYV01212@...>
わたなべです.
[#4510] python doc — Kikutani Makoto <kikutani@...>
ここで聞くべきことじゃないのですが、きっと知ってる人がいるだろう
きくたにです。
きくたにさん>
まつもと ゆきひろです
まつもと ゆきひろさん>
助田です
まだ python はかじりはじめたばかりですが、
まつもと ゆきひろです
Wed, Sep 24, 1997 at 02:31:39PM +0900 において
まつもと ゆきひろです
[#4556] install problem of mudule for postgreSQL — Yuichiro Tateno <tateno@...>
うさぎです。
うさぎです。
うさぎです。
まつもと ゆきひろです
まつもと ゆきひろです
うさぎです。
うさぎです。
[#4564] Re: Object#freeze — "EGUCHI Osamu" <eguchi@...>
えぐち です。
前田です。
まつもと ゆきひろです
[#4586] new members — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#4617] array --> float of C (ruby module) — Noritsugu Nakamura <nnakamur@...>
[#4701] XeasyGraphic module — Noritsugu Nakamura <nnakamur@...>
[#4702] warning: global variable `$BODY' not initialized — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
[#4705] fact.rb (1.0-970919, nextstep) — HYOUDOU Kouichi <hyoudo@...>
兵藤です
[#4738] ruby 1.0-970930 install failed — Yoshiyuki Kusano <kusano@...>
草野@構造計画です.
草野@構造計画です.
まつもと ゆきひろです
わたなべです.
まつもと ゆきひろです
わたなべです.
助田です。
[#4741] rbc.rb — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
前田です。
わたなべです.
けいじゅ@日本ラショナルソフトウェアです.
前田です。
けいじゅ@日本ラショナルソフトウェアです.
前田です。
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
[ruby-list:4261] Re: prime generator sample program
けいじゅ@日本ラショナルソフトウェアです.
In [ruby-list :04234 ] the message: "[ruby-list:4234] Re: prime
generator sample program ", on Sep/09 15:29(JST) toyofuku@juice.or.jp
writes:
> 豊福@パパイヤです。
> オブジェクト指向のサンプルプログラムの定番のよう
>ですね。KL1版と C++版を見たことがあります。今回のは
>C++版の ruby への焼き直しです。
オブジェクト指向というよりもストリーム処理ということでは有名みたいです
ね. 探してみたら, エーベルマン・サスマンの``プログラムの構造と実行''の
中のストリームの項にものっていました.
>> # 実は, mathn.rbのために, 同じものをruby版も作ったんですが, あまりにも
>> # 遅いので, mathn.rb では別のアルゴリズムを採用してしまいました(^^;;;
>
> メソッド呼び出しに時間かかるんですかね。
それもあるかも知れませんが, それ以上にオブジェクト生成のコストでしょう
ね. 素数の数だけオブジェクトを生成しちゃいますので...
# でも, そんなこと気にするならCで書けという話しもありますが... 一応,
# ruby推進者としては, ruby以外の実装は極力避けるべきであると考えていま
# すので...
# 仕事では, C++やっているので(Cも)使いたくないという噂もないではないで
# すが(^^;;;;
>> # 別にオブジェクト指向していませんが, アルゴリズムが面白いと思うので興
>> # 味があったら覗いてみて下さい.
> はい読みました。mathn.rb の class Prime を見て
>今回のプログラムを思い出した次第です。
> math.rb についてはいくつか質問がありますがそれは
>また別メールにて。
はいはい. いろいろと問題点もあるのは認識していますがお手やらわかに
(^^;;;;
>自動的に collect とか find も使えるようになるのですね。
そうです. そうです.
> なるほど勉強になりました。こういうことがサンプル
>プログラムとともに書いてあるドキュメントがあると
>いいですね。
いや. 本当は今頃本が出ていたはずなんですけどねぇ.... その中ではちゃん
と書いてあることになっています(^^;;;
>> # ただ, loopは無限に続くので途中で確実に止まることが保証されていないと...
>
> この後は何が続くのでしょう。
>・「無限ループになったらあきらめろ」
>・「だから確実に止まるように気をつけろ」
>・「だからこれこれの技を使え」
2番目ですね.
通常のストリームの場合は, nextを実装することによっていろいろの機能が付
加されるんですが, それとは違い, Enumeratableのeachは最後まで繰り返そう
としますので, 無限に生成するストリームに対して, Enumeratableをインクルー
ドするのは無理がないでもないですね.
> アドバイスを基にしてプログラムを書き直しました。
>どうでしょう。
(中略)
おお. 以前のプログラムは loop doが結構あって気にならなくもなかったので
すが, そこがイテレータに置き換わっていてよりruby(?)らしくなっています
ね(^^;;;
もう少し意見をいわせてもらうと,
1. Streamはクラスでなくてモジュールにすることもできる.
2. FilterやCounterはそれ自身で利用できるクラスではないので, Sieveのロー
カルクラスにすることもできる.
以下のような感じですね:
module Stream
...
end
class Sieve
include Stream
class Filter
include Stream
...
end
class Counter
include Stream
...
end
...
end
1について解説すると, Streamクラスはクラスにしておくにはもったいない(?)
からです. rubyでは, スーパークラスは1つしか持てません. 一方モジュール
は複数インクルードできますので, 抽象クラスになるものはモジュールにでき
るかどうか検討する価値はあると思います.
話しを進める前に1つだけ:
* ライブラリとして使うには, Stream#out はいただけない.
outという名前は深い意味があるのでしょうか? もしそうじゃなければ, もう
ちょっと適当な名前に変えた方がよいかも知れません. 良く使う名前としては
nextがありますが, rubyではnextは予約語(になる予定)なので使えません. こ
こでは, Stream#succ(essor) という名前にしたとしましょう.
Streamモジュールをインクルードするモジュール(クラス)は, メソッドsuccが
定義されていれば, Streamの機能を利用できるようになるわけですね.
今のところ, Stream#each(とEnumeratableの機能)が利用できるようになるだ
けですが, もう少しメソッドを用意すればより利用価値の高いものになりますね.
# Streamジュールは, これだけでもちゃんとしたモジュールライブラリになっ
# ていますけどね(^^;;;;
__
................................石塚 圭樹@日本ラショナルソフトェア...
----------------------------------->> e-mail: keiju@bc.mbn.or.jp <<---