eq?/eqv? hash tables with rehashing on gc,
as in larceny, may be doing more work than
is needed for some common eq?/eqv? cases.

If the keys are only symbols, it would be
reasonable to store a hash value directly in
the symbol object, or even arrange for all
symbols to be stationary in the gc.  To allow
such optimizations, I think we should add:


(which may just be the same as an eq table.)

Similarly, a possibly rehashing eqv table is
overkill for characters and numbers when we
can just construct normal comparison-based
hash tables using:


One could also consider char-ci-hash, though
case comparisons on single chars may be
indicative of poor design.