>>>>> "a" == <ale / crimson.propagation.net> writes: a> #else a> while (len--) { a> key = key*65599 + *p; a> p++; a> } a> } a> key = key + (key>>5); a> #endif This is not the hash function used in st_lookup, this is just the hash function defined in string.c (i.e. this is the function associated with String#hash) This is why I've said in [ruby-talk:9552] > p.s.: this is a bad example because in ruby String#hash is not the function > used by st_lookup Guy Decoux