[#13273] Ruby anywhere — "NAKAMURA, Hiroshi" <nakahiro@...>

なひです.rubyistモード.

262 messages 1999/04/01
[#13305] Re: Ruby anywhere — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/04/05

なひです.

[#13308] Re: Ruby anywhere — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/04/05

なひです.まったく何書いてんだか... > 自分 ^^;

[#13309] Re: Ruby anywhere — 中村暁史 <anakamur@...> 1999/04/05

[#13310] iterator for Dummies( was Re: Ruby anywhere ) — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/04/05

なひです.もちろん「Dummy」なのは私です.^^;

[#13313] Re: iterator for Dummies( was Re: Ruby anywhere ) — Shugo Maeda <shugo@...> 1999/04/05

前田です。

[#13314] Re: iterator for Dummies( was Re: Ruby anywhere ) — hisanori@... 1999/04/06

松尾です。

[#13317] Re: iterator for Dummies( was Re: Ruby anywhere ) — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/04/06

なひです.

[#13330] Re: iterator for Dummies( was Re: Ruby anywhere ) — Wakou Aoyama <wakou@...> 1999/04/06

青山です。

[#13363] Re: iterator for Dummies( was Re: Ruby anywhere ) — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/04/06

なひです.

[#13367] Re: iterator for Dummies( was Re: Ruby anywhere ) — Wakou Aoyama <wakou@...> 1999/04/06

青山です。

[#13312] Re: Ruby anywhere — Inaba Hiroto <inaba@...> 1999/04/05

稲葉です。

[#13371] Re: Ruby and LISP ( was Re: Ruby anywhere ) — takagi@... (TAKAGI, Hiromitsu) 1999/04/06

> > > 「call-by-referenceで」もちょっと言葉が違うような。

[#13377] Re: Ruby and LISP ( was Re: Ruby anywhere ) — Shin-ichiro Hara <sinara@...> 1999/04/07

原です。

[#13378] Re: Ruby and LISP ( was Re: Ruby anywhere ) — Shugo Maeda <shugo@...> 1999/04/07

前田です。

[#13380] Re: Ruby and LISP ( was Re: Ruby anywhere ) — Shin-ichiro Hara <sinara@...> 1999/04/07

原です。

[#13390] Re: Ruby and LISP ( was Re: Ruby anywhere ) — Wakou Aoyama <wakou@...> 1999/04/07

青山です。

[#13398] Re: Ruby and LISP ( was Re: Ruby anywhere ) — Shin-ichiro Hara <sinara@...> 1999/04/07

原です。

[#13399] constant/immutable(Re: Ruby and LISP) — Shugo Maeda <shugo@...> 1999/04/07

前田です。

[#13400] Re: constant/immutable(Re: Ruby and LISP) — 中村暁史 <anakamur@...> 1999/04/07

[#13474] Re: Ruby and LISP ( was Re: Ruby anywhere ) — takagi@... (TAKAGI, Hiromitsu) 1999/04/08

Shugo Maeda <shugo@netlab.co.jp> writes:

[#13490] Re: Ruby and LISP ( was Re: Ruby anywhere ) — Shugo Maeda <shugo@...> 1999/04/08

前田です。

[#13496] What is Object in Ruby? (Re: Ruby and LISP) — Shin-ichiro Hara <sinara@...> 1999/04/08

原です。

[#13800] Re: What is Object in Ruby? (Re: Ruby and LISP) — Shin-ichiro Hara <sinara@...> 1999/04/16

原です。

[#13805] Re: What is Object in Ruby? (Re: Ruby and LISP) — gotoken@... (GOTO Kentaro) 1999/04/16

ごとけんです

[#13808] Re: What is Object in Ruby? (Re: Ruby and LISP) — Shin-ichiro Hara <sinara@...> 1999/04/16

原です。

[#13816] Re: What is Object in Ruby? (Re: Ruby and LISP) — Wakou Aoyama <wakou@...> 1999/04/16

青山です。

[#13824] Re: What is Object in Ruby? (Re: Ruby and LISP) — Shin-ichiro Hara <sinara@...> 1999/04/16

原です。

[#13830] Re: What is Object in Ruby? (Re: Ruby and LISP) — Wakou Aoyama <wakou@...> 1999/04/16

青山です。

[#13839] Re: What is Object in Ruby? (Re: Ruby and LISP) — Wakou Aoyama <wakou@...> 1999/04/17

青山です。

[#13842] Re: What is Object in Ruby? (Re: Ruby and LISP) — Shin-ichiro Hara <sinara@...> 1999/04/17

原です。

[#13856] Re: What is Object in Ruby? (Re: Ruby and LISP) — gotoken@... (GOTO Kentaro) 1999/04/18

ごとけんです

[#13872] Re: What is Object in Ruby? (Re: Ruby and LISP) — Shin-ichiro Hara <sinara@...> 1999/04/19

原です。

[#13880] Re: What is Object in Ruby? (Re: Ruby and LISP) — gotoken@... (GOTO Kentaro) 1999/04/19

ごとけんです

[#13883] destructive methods (Re: Re: What is Object in Ruby?) — matz@... (Yukihiro Matsumoto) 1999/04/19

[#13621] Integer[num] (Re: Ruby and LISP) — gotoken@... (GOTO Kentaro) 1999/04/12

ごとけんです

[#13622] Re: Integer[num] (Re: Ruby and LISP) — Shugo Maeda <shugo@...> 1999/04/12

前田です。

[#13624] Re: Integer[num] (Re: Ruby and LISP) — gotoken@... (GOTO Kentaro) 1999/04/12

ごとけんです

[#13630] Re: Integer[num] (Re: Ruby and LISP) — Shugo Maeda <shugo@...> 1999/04/12

前田です。

[#13675] Re: Integer[num] (Re: Ruby and LISP) — gotoken@... (GOTO Kentaro) 1999/04/13

ごとけんです

[#13677] Re: Integer[num] (Re: Ruby and LISP) — 中村暁史 <anakamur@...> 1999/04/13

[#13690] Flyweight (Re: Integer[num]) — gotoken@... (GOTO Kentaro) 1999/04/13

ごとけんです

[#23715] Re: Flyweight (Re: Integer[num]) — Masatoshi SEKI <m_seki@...> 2000/07/05

[#23718] context switch during finalizer(Re: Re: Flyweight) — matz@... (Yukihiro Matsumoto) 2000/07/06

まつもと ゆきひろです

[#23727] Re: context switch during finalizer(Re: Re: Flyweight) — Masatoshi SEKI <m_seki@...> 2000/07/06

[#13516] Re: Ruby and LISP ( was Re: Ruby anywhere ) — takagi@... (TAKAGI, Hiromitsu) 1999/04/08

Shugo Maeda <shugo@netlab.co.jp> writes:

[#13526] Re: Ruby and LISP ( was Re: Ruby anywhere ) — Shugo Maeda <shugo@...> 1999/04/09

前田です。

[#13568] Re: Ruby and LISP ( was Re: Ruby anywhere ) — takagi@... (TAKAGI, Hiromitsu) 1999/04/09

Shugo Maeda <shugo@netlab.co.jp> writes:

[#13383] — Inaba Hiroto <inaba@...>

稲葉です.

18 messages 1999/04/07
[#13422] Re: — kjana@... (YANAGAWA Kazuhisa) 1999/04/07

In message <9904070229.AA11857@tux0017.sdd.tokyo-sc.toshiba.co.jp>

[#13435] What is `binding' (was Re: Ruby and LISP) — Inaba Hiroto <inaba@...> 1999/04/08

稲葉です。これも出しなおしです.

[#13502] Re: Ruby and LISP ( was Re: Ruby anywhere ) — "豊福" <toyofuku@...>

豊福@パパイヤです。

16 messages 1999/04/08

[#13644] bbs — kikutani@...

rubyで書かれたWebの掲示板てありましたっけ?

31 messages 1999/04/12
[#13656] Re: bbs — TADA Tadashi <sho@...> 1999/04/13

初めて投稿します。多田@S.P.C.です。

[#13657] Re: bbs — kikutani@... 1999/04/13

On Tue, 13 Apr 1999 11:16:47 +0900,

[#13663] Re: bbs — hisanori@... 1999/04/13

松尾です。

[#13867] Re: What is Object in Ruby? (Re: Ruby and LISP) — toyofuku@...

豊福@パパイヤです。

15 messages 1999/04/19
[#13876] Re: What is Object in Ruby? (Re: Ruby and LISP) — Wakou Aoyama <wakou@...> 1999/04/19

青山です。

[#13903] timer — hisanori@...

松尾です。

24 messages 1999/04/20
[#13905] Re: timer — matz@... (Yukihiro Matsumoto) 1999/04/20

まつもと ゆきひろです

[#13910] Re: timer — hisanori@... 1999/04/20

松尾です.

[#13911] Thread GC (Re: Re: timer) — matz@... (Yukihiro Matsumoto) 1999/04/20

まつもと ゆきひろです

[#13920] Re: Thread GC (Re: Re: timer) — hisanori@... 1999/04/20

松尾です.

[#13924] Re: Thread GC (Re: Re: timer) — matz@... (Yukihiro Matsumoto) 1999/04/20

まつもと ゆきひろです

[#14037] TMail について — 民斗 <tommy@...>

民斗です。

38 messages 1999/04/24
[#14082] Re: TMail について — Minero Aoki <aamine@...> 1999/04/27

あおきです。報告ありがとうございます。

[#14088] Re: TMail について — 民斗 <tommy@...> 1999/04/28

民斗です。

[#14090] Re: TMail について — WATANABE Hirofumi <watanabe@...> 1999/04/28

わたなべです.

[#14092] Re: TMail について — Minero Aoki <aamine@...> 1999/04/28

あおきです。

[#14095] Re: TMail について — WATANABE Hirofumi <eban@...> 1999/04/29

わたなべです.

[#14096] Re: TMail について — kikutani@... 1999/04/30

In ruby-list, you wrote:

[#14099] Re: TMail について — matz@... (Yukihiro Matsumoto) 1999/04/30

まつもと ゆきひろです

[ruby-list:13695] Re: iterator <-> cursor (Re: iterator for Dummies)

From: Shin-ichiro Hara <sinara@...>
Date: 1999-04-13 15:02:03 UTC
List: ruby-list #13695
原です。

In message "[ruby-list:13542] Re: iterator <-> cursor (Re: iterator for Dummies)"
    on 99/04/09, Yukihiro Matsumoto <matz@netlab.co.jp> writes:
|
|まつもと ゆきひろです

|参考までに私がスレッドを使って書いた外部イテレータ(カーソル)
|を載せておきますです.
|
|--
|class ExternalIterator
|  def initialize(src)
|    @src = src
|    @que = []
|    first
|  end

ここの first っていうのは(後ろにもあるけど)、必要なのかなあ。


これの callcc 版を考えてみました。まず、Queue 相当のものなんですが、
バッファがないのでかわいらしく Hole という名前にしました。

class Hole
  def open
    c = nil
    callcc {|c|}
    if @s
      true
    else
      @s = c
      false
    end
  end
  def post(x); callcc { |@s| @r.call(x) }; end
  def get; callcc { |@r| @s.call }; end
  def close
    @closed = true
    post nil
  end
  def closed?; @closed; end
end

# 使用例
h = Hole.new
if h.open
  for i in 1..5
    h.post i
  end
  h.close
end
while x = h.get
  p x
end


そして ExternalIterator ですが、仕様が少し変わっています。

class ExternalIterator
  def initialize(src)
    @src = src
    @que = Hole.new
    first
  end
  def first
    if @que.open
      for i in @src
        @que.post i
      end
      @que.close
    end
  end
  def succ
    raise 'no more items' unless success?
    @que.get
  end
  alias next succ
  def success?
    not @que.closed?
  end
  def each()
    loop do
      x = succ
      break unless success?
      yield x
    end
  end
end

def match_items(a, b)
  ia = ExternalIterator.new(a)
  ib = ExternalIterator.new(b)
  i = 0
  loop do
    item_a = ia.next
    item_b = ib.next

    if !ia.success? and ib.success?
      printf "collections `a' shorter than `b'(size %d)\n", i
      return
    elsif ia.success? and !ib.success?
      printf "collections `b' shorter than `a'(size %d)\n", i
      return
    elsif !ia.success? and !ib.success?
      break
    elsif item_a != item_b
      printf "collections differ on %dth item\n", i
      return
    end
    i+=1
  end
  printf "collections `a' and `b' are same(size %d)\n", i
end

match_items([1,2,3,4,5],[1,2,8,9,0])
match_items([1,2,3,4],[1,2])
match_items([1,2],[1,2,8,9,0])
match_items([1,2,3,4,5],[1,2,3,4,5])
match_items([1,2,3,4,5],[1,2,3,4,4])
match_items({1,2,3,4},{1,2,3,4})


一応結果はいいみたいですが、間違ってるかも。

In This Thread