[#41581] Ruby 1.6.7 dieing of segfault — Dossy <dossy@...>

I've got something that's fairly reproducible in 1.6.7. Is

11 messages 2002/06/02
[#41582] Re: Ruby 1.6.7 dieing of segfault — Nobuyoshi Nakada <nobu.nokada@...> 2002/06/02

Hi,

[#41660] dynamic attr_accessor?? — Markus Jais <mjais@...>

hello

16 messages 2002/06/03

[#41755] HTML Parser suggestions wanted — Ned Konz <ned@...>

I've written an HTML parser that builds trees from HTML source. After

13 messages 2002/06/04

[#41809] eval and local variable — "Park Heesob" <phasis@...>

15 messages 2002/06/05

[#41819] mod_ruby and module space — "Sean O'Dell" <sean@...>

It seems that if I execute a script using mod_ruby, I cannot call

18 messages 2002/06/05

[#41867] Pascal-like 'with' statement? — Philip Mak <pmak@...>

Is there something like Pascal's with statement? I'd like to turn this

18 messages 2002/06/06

[#41919] 1-second events — Paul Brannan <pbrannan@...>

I need to create an event that occurs exactly once per second.

15 messages 2002/06/06

[#42086] ANN: REXML 2.3.5 && 2.2.3 — Sean Russell <ser@...>

<posted & mailed>

31 messages 2002/06/09
[#42091] Re: ANN: REXML 2.3.5 && 2.2.3 — Sean Russell <ser@...> 2002/06/09

<posted & mailed>

[#42092] RE: ANN: REXML 2.3.5 && 2.2.3 — <james@...> 2002/06/09

> Well, XMLSchema may be troublesome to interpret, but it isn't

[#42192] ruby-dev summary 17252-17356 — Minero Aoki <aamine@...>

Hi all,

81 messages 2002/06/11
[#42290] Re: a new block parameter/variable notation (Re: ruby-dev summary 17252-17356) — Kent Dahl <kentda@...> 2002/06/12

Not wanting to flog a dead horse, but I just wonder what the final word

[#42295] Re: a new block parameter/variable notation (Re: ruby-dev summary 17252-17356) — matz@... (Yukihiro Matsumoto) 2002/06/12

Hi,

[#42455] Application server & web developement enviroment — "Radu M. Obad磚 <whizkid@...>

Howdy,

14 messages 2002/06/14
[#42459] Re: Application server & web developement enviroment — Austin Ziegler <austin@...> 2002/06/14

On Fri, 14 Jun 2002 15:55:31 +0900, Radu M. Obadwrote:

[#42472] ANN: Programmierung in Ruby — "Juergen Katins" <katins.juergen@...>

Programmierung in Ruby Online gibt es jetzt mit ausfrlichem

14 messages 2002/06/14

[#42504] Are Unix tools just slow? — Chris Gehlker <gehlker@...>

Awhile back I was asking for help with a unixy way to search the mounted

48 messages 2002/06/14
[#42516] Re: Are Unix tools just slow? — "Daniel P. Zepeda" <daniel@...> 2002/06/15

On Sat, 15 Jun 2002 07:14:38 +0900

[#42506] Re: Are Unix tools just slow? — Rick Bradley <rick@...> 2002/06/14

* Chris Gehlker (gehlker@fastq.com) [020614 17:18]:

[#42512] Re: Are Unix tools just slow? — Chris Gehlker <gehlker@...> 2002/06/15

On 6/14/02 3:34 PM, "Rick Bradley" <rick@rickbradley.com> wrote:

[#42513] opengl for ruby, please help — ccos <ccos@...> 2002/06/15

unix newby failing miserably here:

[#42507] mpg123 — Tobias Reif <tobiasreif@...>

Hi,

15 messages 2002/06/14

[#42546] File.new('foo', 0600 , 'wb') — Tobias Reif <tobiasreif@...>

Hi,

21 messages 2002/06/15
[#42552] Re: File.new('foo', 0600 , 'wb') — Tobias Reif <tobiasreif@...> 2002/06/15

Dossy wrote:

[#42591] Kernel#select questions — Wilkes Joiner <boognish23@...>

I'm trying to track down a bug where Kernel#select is returning [[],[],[]] as

12 messages 2002/06/17

[#42617] eRuby on Mac OS X — Jim Menard <jimm@...>

I've searched ruby-talk for this topic, and the only messages I found show

13 messages 2002/06/17

[#42674] REXML in C — "Radu M. Obad磚 <whizkid@...>

Hi,

20 messages 2002/06/18

[#42771] Why is I/O slow? — Clifford Heath <cjh_nospam@...>

Ok, folk, time to try again. It's nothing to do with SHA-1.

61 messages 2002/06/20
[#42831] Re: Why is I/O slow? — Clifford Heath <cjh_nospam@...> 2002/06/21

Yukihiro Matsumoto wrote:

[#42836] RE: Why is I/O slow? — "Mike Campbell" <michael_s_campbell@...> 2002/06/21

> With respect, this doesn't sound like a smart idea. The glibc folk have

[#42838] Re: Why is I/O slow? — Albert Wagner <alwagner@...> 2002/06/21

On Thursday 20 June 2002 10:10 pm, Mike Campbell wrote:

[#42839] Re: Why is I/O slow? — Austin Ziegler <austin@...> 2002/06/21

On Fri, 21 Jun 2002 12:16:24 +0900, Albert Wagner wrote:

[#42928] GOOD DEAL — "DR. ISA BELLO" <dr_isa@...>

FROM:DR ISA BELLO

11 messages 2002/06/22

[#42982] No exceptions from String#to_i — "Hal E. Fulton" <hal9000@...>

I've been bitten by this before... maybe

19 messages 2002/06/24
[#42983] Re: No exceptions from String#to_i — ts <decoux@...> 2002/06/24

>>>>> "H" == Hal E Fulton <hal9000@hypermetrics.com> writes:

[#42986] Re: No exceptions from String#to_i — Nikodemus Siivola <tsiivola@...> 2002/06/24

[#43122] Re: help (ruby-talk ML) — Benjamin Peterson <bjsp123@...>

20 messages 2002/06/27
[#43123] Re: help (ruby-talk ML) — Dave Thomas <Dave@...> 2002/06/27

Benjamin Peterson <bjsp123@yahoo.com> writes:

[#43124] RE: help (ruby-talk ML) — Bob Calco <robert.calco@...> 2002/06/27

Yes, I would gladly volunteer considerable effort to this end. I have

[#43147] Ruby on Mac OS X — Tobias Reif <tobiasreif@...>

Hi,

24 messages 2002/06/28

[#43174] eruby SAFE question — Dylan Northrup <docx@...>

I'm trying to implement a replacement for the standard apache file listings

39 messages 2002/06/28
[#43249] documentation licenses (was: eruby SAFE question) — Tobias Reif <tobiasreif@...> 2002/06/30

Dave Thomas wrote:

[#43250] Re: documentation licenses (was: eruby SAFE question) — Dave Thomas <Dave@...> 2002/06/30

Tobias Reif <tobiasreif@pinkjuice.com> writes:

[#43255] RE: documentation licenses (was: eruby SAFE question) — <james@...> 2002/06/30

>

[#43280] Re: documentation licenses (was: eruby SAFE question) — "Juergen Katins" <juergen.katins@...> 2002/07/01

Tobias Reif wrote

[#43282] Re: documentation licenses (was: eruby SAFE question) — David Alan Black <dblack@...> 2002/07/01

On Mon, 1 Jul 2002, Juergen Katins wrote:

[#43381] RE: documentation licenses (was: eruby SAFE question) — <james@...> 2002/07/02

> From: David Alan Black [mailto:dblack@candle.superlink.net]

Re: Hash#===()

From: Kent Dahl <kentda@...>
Date: 2002-06-09 15:18:23 UTC
List: ruby-talk #42079
Han Holl wrote:
> Yes,  like a test for set membership. It seems
> intuitive to me.

I'd be more inclined to alias it to the Enumerable#include? myself. That
is, unless someone does use Hash#=== for something as is. (Doesn't it
just go up to Object#=== and degenerate into a == as it is now?)

But as for your benchmarks:
  1) hash key lookups are supposed to be fast, with constant lookup
time. This is not surprising. I feel that you are comparing apples to
oranges.
  2) your tests aren't completely fair, as the hashobject is
pregenerated, while the others are literals in the case statements
themselves. Doesn't yield much difference, but still:

<CODE>
require 'benchmark'
include Benchmark

class Hash
  alias === has_key?
end

array1  = "abc", "def", "kli", "lop", "tli", "ppp"
regexp1 = /^(abc|def|kli|lop|tli|ppp)$/
regexp2 = /^(?:abc|def|kli|lop|tli|ppp)$/

n = 100000
hash = { "abc"=> 1, "def"=> 1, "kli"=> 1, "lop"=> 1, "tli"=> 1, "ppp"=>
1 }
[ "ppp", "abc", "for" ].each do |a|
 bm(7) do |x|
    # first the explicit array version
   x.report(a+' a'){for i in 1..n;
    case a
    when "abc", "def", "kli", "lop", "tli", "ppp"
    end
   end}
   x.report(a){for i in 1..n;
    case a
    when *array1 #"abc", "def", "kli", "lop", "tli", "ppp"
    end
   end}

   x.report(a+' r1'){for i in 1..n;
    case a
    when /^(abc|def|kli|lop|tli|ppp)$/
    end
   end}
   x.report(a){for i in 1..n;
    case a
    when regexp1 #/^(abc|def|kli|lop|tli|ppp)$/
    end
   end}

   x.report(a+' r2'){for i in 1..n;
    case a
    when /^(?:abc|def|kli|lop|tli|ppp)$/
    end
   end}
   x.report(a){for i in 1..n;
    case a
    when regexp2 #/^(?:abc|def|kli|lop|tli|ppp)$/
    end
   end}

   x.report(a+' h'){for i in 1..n;
    case a
    when  { "abc"=> 1, "def"=> 1, "kli"=> 1, "lop"=> 1, "tli"=> 1,
"ppp"=> 1 }
    end
   end}
   x.report(a){for i in 1..n;
    case a
    when hash
    end
   end}

 end
end
</CODE>

<OUTPUT>
ppp a    0.640000   0.000000   0.640000 (  0.645890)
ppp      0.290000   0.000000   0.290000 (  0.299588)
ppp r1   0.420000   0.010000   0.430000 (  0.424303)
ppp      0.420000   0.000000   0.420000 (  0.418180)
ppp r2   0.380000   0.000000   0.380000 (  0.382281)
ppp      0.380000   0.000000   0.380000 (  0.382734)
ppp h    1.800000   0.000000   1.800000 (  1.799063)
ppp      0.130000   0.000000   0.130000 (  0.128566)
             user     system      total        real
abc a    0.170000   0.000000   0.170000 (  0.167413)
abc      0.110000   0.000000   0.110000 (  0.109137)
abc r1   0.340000   0.000000   0.340000 (  0.335180)
abc      0.330000   0.000000   0.330000 (  0.331492)
abc r2   0.310000   0.000000   0.310000 (  0.315915)
abc      0.320000   0.000000   0.320000 (  0.318973)
abc h    1.820000   0.000000   1.820000 (  1.815141)
abc      0.130000   0.000000   0.130000 (  0.128977)
             user     system      total        real
for a    0.660000   0.000000   0.660000 (  0.659464)
for      0.300000   0.000000   0.300000 (  0.296972)
for r1   0.270000   0.000000   0.270000 (  0.276839)
for      0.280000   0.000000   0.280000 (  0.277514)
for r2   0.260000   0.000000   0.260000 (  0.260307)
for      0.260000   0.000000   0.260000 (  0.261449)
for h    1.790000   0.000000   1.790000 (  1.795176)
for      0.120000   0.000000   0.120000 (  0.115688)
</OUTPUT>  

Note that pregenerating the regexps doesn't yield much, but expanding a
pregenerated array seems to have very much effect, even going below the
hash version for 'abc'. But then that is because the first element of
the array is 'abc'.

-- 
(\[ Kent Dahl ]/)_    _~_    __[ http://www.stud.ntnu.no/~kentda/ ]___/~
 ))\_student_/((  \__d L b__/  NTNU - graduate engineering - 4. year  )
( \__\_/__/ ) _)Industrial economics and technological management(
 \____/_\____/ (____engineering.discipline_=_Computer::Technology___)

In This Thread