[Openmcl-devel] Address-based hashing considered harmful. Maybe.

Yannick Versley yversley at gmx.de
Mon Mar 3 15:28:24 PST 2003

> > There's room for argument as to what the default value of :ADDRESS-BASED
> > should be, but if it was in effect things would work as they do now:
> > there'd be some significant paranoia and locking involved when such a
> > hash table was accessed, but the lookup should still be efficient and
> > the overhead might be less significant.

Since the address-based and the simple keys are disjoint sets, would it
not make sense to have two real hashtables attached to one logical
hashtable object, one with simple keys and one which handles address-based

That way, there would be no need for locking in the case of a simple key,
and the rehashing involved when a gc occured between two accesses with
address-based keys would be much simpler in the case of a hashtable with
mostly simple objects without having to worry about inefficiency in
portable code.

Or, to make everyone but the implementor happy, allow t, nil and :maybe
for the :address-based parameter to make-hash-table, the latter being the
default and doing the thing mentioned above.


Openmcl-devel mailing list
Openmcl-devel at clozure.com

More information about the Openmcl-devel mailing list