On Tue, Sep 15, 2015 at 8:31 PM, John Cowan <xxxxxx@mercury.ccil.org> wrote:
Alex Shinn scripsit:

> However providing the salt directly in the API has several
> advantages:

Do you mean allowing a salt argument to the constructors?  I thought the
whole point of the salt was that it's supposed to be produced from
a high-quality random source.

No, the hash table implementation provides the salt.
My proposal is for the hash function API to be:

  (hash <object> <salt>)

The salt could be global or per table, at the implementations
discretion.  Using different values for the salt effectively
generates multiple hash functions, allowing double hashing
and cuckoo hashing, etc.

-- 
Alex