[plt-scheme] porting SRFI-69 to PLT

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Fri Nov 4 14:52:24 EST 2005

At Wed, 2 Nov 2005 11:08:39 -0700, "Chongkai Zhu" wrote:
> > No. Hash table of SRFI 69 can accept a user defined hash
> > function, and
> > a user defined equal? function. Hash table of PLT uses
> > build in hash
> > function, and only support (R5RS's) equal? / eq? . So
> > SRFI 69 is not a
> > subset, but a superset of the functionality of PLT's hash
> > table in this sense.
> 
> Might be worth raising this issue on plt-scheme, as Matthew
> Flatt may be prepared to change the current interface to
> make this easier.

I think the main problem is that MzScheme's current hash-table
implementation uses double-hashing (need two hash functions), whereas
SRFI-69 lets the programmer provide a single hash function.

MzScheme could certainly provide a hash-table implementation that uses
single-hashing, supports an external hash function, and answers #t to
`hash-table?' (where all the existing functions would work by
dispatching to an appropriate implementation internally). I'm not sure
that's any more useful than a separate library, though.

Recommendations?

Matthew



Posted on the users mailing list.