From: Nobuyoshi Nakada Date: 2007-10-04T08:38:07+09:00 Subject: Re: Performance Issues with nil, true, false as Hash Keys (1.8.6) Hi, At Thu, 4 Oct 2007 06:16:24 +0900, > It appears that hash.c is not optimized for T_NIL, T_FALSE and T_TRUE. > The following patch (against 1.8.6-p110) should fix that: > > --- hash.c.orig 2007-10-03 22:54:34.000000000 +0200 > +++ hash.c 2007-10-03 22:55:14.000000000 +0200 > @@ -93,6 +93,9 @@ > switch (TYPE(a)) { > case T_FIXNUM: > case T_SYMBOL: > + case T_NIL: > + case T_FALSE: > + case T_TRUE: > return (int)a; > break; Perhaps, `if (IMMEDIATE_P(a))' equals it and would be faster a bit. -- Nobu Nakada