[#22195] IO::for_io and TCPServer#bind — GOTOU Yuuzou <gotoyuzo@...>

test_drb が IPv4 射影アドレスが有効な環境でないと動かないこ

16 messages 2003/12/09
[#22198] Re: IO::for_io and TCPServer#bind — matz@... (Yukihiro Matsumoto) 2003/12/09

まつもと ゆきひろです

[#22205] yet another inconsistency about EOF between StringIO and IO — Tanaka Akira <akr@...17n.org>

StringIO の

24 messages 2003/12/10
[#22206] Re: yet another inconsistency about EOF between StringIO and IO — nobu.nakada@... 2003/12/10

なかだです。

[#22214] Re: yet another inconsistency about EOF between StringIO and IO — Tanaka Akira <akr@...17n.org> 2003/12/10

In article <200312100725.hBA7P8Ac011112@sharui.nakada.kanuma.tochigi.jp>,

[#22222] Re: yet another inconsistency about EOF between StringIO and IO — nobu.nakada@... 2003/12/10

なかだです。

[#22234] Re: yet another inconsistency about EOF between StringIO and IO — Masahiro Sakai (酒井政裕) <sakai@...> 2003/12/11

さかいといいます。

[#22262] Re: yet another inconsistency about EOF between StringIO and IO — Tanaka Akira <akr@...17n.org> 2003/12/13

In article <20031211.214041.71090239.sakai@tom.sfc.keio.ac.jp>,

[#22328] Re: yet another inconsistency about EOF between StringIO and IO — Tanaka Akira <akr@...17n.org> 2003/12/23

In article <87k751dzyf.fsf@serein.a02.aist.go.jp>,

[#22331] Re: yet another inconsistency about EOF between StringIO and IO — matz@... (Yukihiro Matsumoto) 2003/12/23

まつもと ゆきひろです

[#22334] Re: yet another inconsistency about EOF between StringIO and IO — Tanaka Akira <akr@...17n.org> 2003/12/23

In article <1072167374.096702.13473.nullmailer@picachu.netlab.jp>,

[#22343] Re: yet another inconsistency about EOF between StringIO and IO — matz@... (Yukihiro Matsumoto) 2003/12/23

まつもと ゆきひろです

[#22330] core dump with ungetc — Tanaka Akira <akr@...17n.org>

次のように ungetc を使うと core を吐く場合があります。

14 messages 2003/12/23
[#22332] Re: core dump with ungetc — nobu.nakada@... 2003/12/23

なかだです。

[#22366] `to_s': method `to_s' overridden (TypeError) — Tanaka Akira <akr@...17n.org>

そういえば、次の `to_s': method `to_s' overridden (TypeError) というの

12 messages 2003/12/24

[#22385] Tk.callback_break causes seg-fault or hang-up — Hidetoshi NAGAI <nagai@...>

永井@知能.九工大です.

19 messages 2003/12/24
[#22387] Re: Tk.callback_break causes seg-fault or hang-up — matz@... (Yukihiro Matsumoto) 2003/12/24

まつもと ゆきひろです

[#22393] Re: Tk.callback_break causes seg-fault or hang-up — Hidetoshi NAGAI <nagai@...> 2003/12/24

永井@知能.九工大です.

[#22395] Re: Tk.callback_break causes seg-fault or hang-up — matz@... (Yukihiro Matsumoto) 2003/12/24

まつもと ゆきひろです

[#22396] Re: Tk.callback_break causes seg-fault or hang-up — matz@... (Yukihiro Matsumoto) 2003/12/24

まつもと ゆきひろです

[#22397] Re: Tk.callback_break causes seg-fault or hang-up — Hidetoshi NAGAI <nagai@...> 2003/12/24

永井@知能.九工大です.

[#22418] ruby-1.8.1 build failed on HP-UX 11.11 — MIYAMUKO Katsuyuki <k-miyamuko@...>

みやむこです。

29 messages 2003/12/25
[#22419] Re: ruby-1.8.1 build failed on HP-UX 11.11 — matz@... (Yukihiro Matsumoto) 2003/12/25

まつもと ゆきひろです

[#22420] Re: ruby-1.8.1 build failed on HP-UX 11.11 — matz@... (Yukihiro Matsumoto) 2003/12/25

まつもと ゆきひろです

[#22424] Re: ruby-1.8.1 build failed on HP-UX 11.11 — MIYAMUKO Katsuyuki <k-miyamuko@...> 2003/12/25

みやむこです。

[#22491] Re: ruby-1.8.1 build failed on HP-UX 11.11 — MIYAMUKO Katsuyuki <k-miyamuko@...> 2004/01/05

みやむこです。

[ruby-dev:22271] Re: rough / tabs.rb

From: take_tk <ggb03124@...>
Date: 2003-12-13 12:44:46 UTC
List: ruby-dev #22271
たけ(tk)です。

[ruby-dev:21932] rough / tabs.rb にて 
Minero Aoki <aamine@loveruby.net> さん 曰く:

> 文句を言うだけでは何なので別の実装を書きました。
> 書いたのを末尾に添付しときます。

次のようになってしまったのですが、仕様でしょうか? rough では直っている
のかな?

  str ="\t123\t    567     789"
  p str.unexpand(4)     #=> "\t123\t    567     789"
  p str.unexpand_all(4) #=> "16"

  str ="    123     567     789"
  p str.unexpand(4)     #=> "\t123     567     789"
  p str.unexpand_all(4) #=> "16"

自作のものと比べてみたのですが、自作のほう(detab)がexpand よりも速いみ
たいです。

どういう場合に速くなるのでしょうか?

----
#! ruby -Ks
#-- String_tab.rb
#-- String_tab.pi

class String
  def detab(tab_size=8)
    gsub( /(.*?)\t/ ){ $1 + ' '*( tab_size - ( $1.size % tab_size) ) }
  end
  def entab(tab_size=8)
    ret =  (/\t/ =~ self) ? self.detab(tab_size) : self.dup
    (self.size/tab_size).downto(0){|n|
      pos = n*tab_size
      if ret[pos+tab_size-1] == 32
        ret[pos,tab_size] = ret[pos,tab_size].sub(/ *$/,"\t")
      end
    }
    ret
  end
end

if __FILE__ == $0
  require "tabs"
  require "lap"

  str ="\t123\t\t567     789"
  p str.detab(4)  #=> "    123     567     789"
  p str.expand(4) #=> "    123     567     789"
  lap[0]
  1000.times{ str.detab(4) }  ; p lap[0] #=> 0.121
  1000.times{ str.expand(4) } ; p lap[0] #=> 0.33
  1000.times{ str.detab(4) }  ; p lap[0] #=> 0.2
  1000.times{ str.expand(4) } ; p lap[0] #=> 0.201
  1000.times{ str.detab(4) }  ; p lap[0] #=> 0.16
  1000.times{ str.expand(4) } ; p lap[0] #=> 0.21
  1000.times{ str.detab(4) }  ; p lap[0] #=> 0.18
  1000.times{ str.expand(4) } ; p lap[0] #=> 0.211
  1000.times{ str.detab(4) }  ; p lap[0] #=> 0.17
  1000.times{ str.expand(4) } ; p lap[0] #=> 0.24
  1000.times{ str.detab(4) }  ; p lap[0] #=> 0.14
  1000.times{ str.expand(4) } ; p lap[0] #=> 0.231

  str ="\t123\t    567     789"
  p str.entab(4)        #=> "\t123\t\t567\t\t789"
  p str.unexpand(4)     #=> "\t123\t    567     789"
  p str.unexpand_all(4) #=> "16"

  str ="    123     567     789"
  p str.entab(4)        #=> "\t123\t\t567\t\t789"
  p str.unexpand(4)     #=> "\t123     567     789"
  p str.unexpand_all(4) #=> "16"

  lap[0]
  1000.times{ str.entab(4) }    ; p lap[0]     #=> 0.261
  1000.times{ str.unexpand(4) } ; p lap[0]     #=> 0.14
  1000.times{ str.unexpand_all(4) } ; p lap[0] #=> 0.34

end
----

take_tk = kumagai hidetake

In This Thread