[#4060] ruby-tk on Windows — Eiji-usagi-MATSUmoto <ematsu@...>

うさぎです。

70 messages 1997/09/03
[#4061] Re: ruby-tk on Windows — matz@... (Yukihiro Matsumoto) 1997/09/03

まつもと ゆきひろです

[#4064] Re: ruby-tk on Windows — Masaki Suketa <suke@...> 1997/09/03

>まつもと ゆきひろです

[#4071] Re: ruby-tk on Windows — KIMURA Koichi <kkimura@...> 1997/09/03

[#4075] Re: ruby-tk on Windows — Masaki Suketa <suke@...> 1997/09/03

助田です

[#4089] Re: ruby-tk on Windows — Masaki Suketa <suke@...> 1997/09/04

助田です

[#4165] Re: ruby-tk on Windows — Masaki Suketa <suke@...> 1997/09/08

助田です

[#4168] Re: ruby-tk on Windows — KIMURA Koichi <kkimura@...> 1997/09/08

[#4169] Re: ruby-tk on Windows — Shin-ichiro HARA <sinara@...> 1997/09/08

原です。

[#4170] Re: ruby-tk on Windows — matz@... (Yukihiro Matsumoto) 1997/09/08

まつもと ゆきひろです

[#4172] Re: ruby-tk on Windows — WATANABE Hirofumi <watanabe@...> 1997/09/08

わたなべです.

[#4174] Re: ruby-tk on Windows — matz@... (Yukihiro Matsumoto) 1997/09/08

まつもと ゆきひろです

[#4187] Re: ruby-tk on Windows — KIMURA Koichi <kkimura@...> 1997/09/08

[#4188] Re: ruby-tk on Windows — matz@... (Yukihiro Matsumoto) 1997/09/08

まつもと ゆきひろです

[#4190] Re: ruby-tk on Windows — sakamoto@... (Sadayuki Sakamoto) 1997/09/08

酒本です。

[#4083] ruby 1.0-970903 released — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

14 messages 1997/09/03

[#4278] Is there any english documentation ? [FreeBSD ports] — Eiji-usagi-MATSUmoto <ematsu@...>

うさぎです。

11 messages 1997/09/11

[#4313] mail address class — akira yamada / やまだあきら <akira@...>

36 messages 1997/09/15
[#4406] Re: mail address class — akira yamada <akira@...> 1997/09/18

[#4408] Re: mail address class — keiju@... (石塚圭樹 ) 1997/09/18

けいじゅ@日本ラショナルソフトウェアです.

[#4506] Re: mail address class — akira yamada / やまだあきら <akira@...> 1997/09/22

[#4637] Re: mail address class — keiju@... (石塚圭樹 ) 1997/09/25

けいじゅ@日本ラショナルソフトウェアです.

[#5042] Re: mail address class — akira yamada / やまだあきら <akira@...> 1997/10/17

[#5043] Re: mail address class — shugo@... (Shugo Maeda) 1997/10/18

前田です。

[#5044] Re: mail address class — akira yamada / やまだあきら <akira@...> 1997/10/18

[#5047] Re: mail address class — shugo@... (Shugo Maeda) 1997/10/18

前田です。

[#5053] Re: mail address class — akira yamada / やまだあきら <akira@...> 1997/10/19

[#5067] Re: mail address class — shugo@... (Shugo Maeda) 1997/10/20

前田です。

[#4324] ruby seminar — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

37 messages 1997/09/16
[#4337] Re: ruby seminar — shugo@... (MAEDA Shugo) 1997/09/16

前田です。

[#4339] Re: ruby seminar — matz@... (Yukihiro Matsumoto) 1997/09/16

まつもと ゆきひろです

[#4387] Re: ruby seminar — shugo@... (MAEDA Shugo) 1997/09/18

前田です。

[#4391] Re: ruby seminar — Eiji-usagi-MATSUmoto <ematsu@...> 1997/09/18

うさぎ@勤務地は西田幾太郎生誕の地です。

[#4407] Re: ruby seminar — shugo@... (MAEDA Shugo) 1997/09/18

前田です。

[#4366] socket — Kikutani Makoto <kikutani@...>

きくたにです。

21 messages 1997/09/17
[#4389] Re: socket — matz@... (Yukihiro Matsumoto) 1997/09/18

まつもと ゆきひろです

[#4449] Bug?? (ruby-1.0-970911) — Yuji Shigehiro <sigehiro@...>

ruby-1.0-970701 から, ruby-1.0-970911 にバージョンアップしたところ,

16 messages 1997/09/19

[#4510] python doc — Kikutani Makoto <kikutani@...>

ここで聞くべきことじゃないのですが、きっと知ってる人がいるだろう

34 messages 1997/09/22
[#4555] Re: python doc — Kikutani Makoto <kikutani@...> 1997/09/24

きくたにです。

[#4562] Re: python doc — gotoken@... (GOTO Kentaro) 1997/09/24

きくたにさん>

[#4563] ruby animal (Re: python doc) — matz@... (Yukihiro Matsumoto) 1997/09/24

まつもと ゆきひろです

[#4567] Re: ruby animal (Re: python doc) — gotoken@... (GOTO Kentaro) 1997/09/24

まつもと ゆきひろさん>

[#4577] Re: ruby animal (Re: python doc) — Masaki Suketa <suke@...> 1997/09/24

助田です

[#4556] install problem of mudule for postgreSQL — Yuichiro Tateno <tateno@...>

30 messages 1997/09/24
[#4559] Re: install problem of mudule for postgreSQL — Eiji-usagi-MATSUmoto <ematsu@...> 1997/09/24

うさぎです。

[#4574] Re: install problem of mudule for postgreSQL — Yuichiro Tateno <tateno@...> 1997/09/24

[#4580] Re: install problem of mudule for postgreSQL — Eiji-usagi-MATSUmoto <ematsu@...> 1997/09/24

うさぎです。

[#4595] Re: install problem of mudule for postgreSQL — Yuichiro Tateno <tateno@...> 1997/09/24

[#4603] Re: install problem of mudule for postgreSQL — Eiji-usagi-MATSUmoto <ematsu@...> 1997/09/24

うさぎです。

[#4612] Re: install problem of mudule for postgreSQL — Yuichiro Tateno <tateno@...> 1997/09/24

[#4614] Re: install problem of mudule for postgreSQL — matz@... (Yukihiro Matsumoto) 1997/09/24

まつもと ゆきひろです

[#4616] Re: install problem of mudule for postgreSQL — Yuichiro Tateno <tateno@...> 1997/09/24

[#4622] Re: install problem of mudule for postgreSQL — matz@... (Yukihiro Matsumoto) 1997/09/24

まつもと ゆきひろです

[#4632] Re: install problem of mudule for postgreSQL — Yuichiro Tateno <tateno@...> 1997/09/25

[#4738] ruby 1.0-970930 install failed — Yoshiyuki Kusano <kusano@...>

草野@構造計画です.

15 messages 1997/09/30

[#4741] rbc.rb — keiju@... (Keiju ISHITSUKA)

けいじゅ@日本ラショナルソフトウェアです.

33 messages 1997/09/30
[#4759] Re: rbc.rb — shugo@... (MAEDA Shugo) 1997/10/02

前田です。

[#4773] Re: rbc.rb — keiju@... (石塚圭樹 ) 1997/10/03

けいじゅ@日本ラショナルソフトウェアです.

[#4778] Re: rbc.rb — shugo@... (MAEDA Shugo) 1997/10/03

前田です。

[#4793] Re: rbc.rb — keiju@... (石塚圭樹 ) 1997/10/04

けいじゅ@日本ラショナルソフトウェアです.

[ruby-list:4261] Re: prime generator sample program

From: keiju@... (Keiju ISHITSUKA)
Date: 1997-09-10 12:48:55 UTC
List: ruby-list #4261
けいじゅ@日本ラショナルソフトウェアです.

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 <<---

In This Thread

Prev Next