Happy Happy Joy Joy (was: On to Hydro)

Jonathan S. Shapiro shap@eros-os.org
Fri, 25 Aug 2000 08:26:22 -0400


> E absolutely needs an equality-based hashtable primitive, and one cannot
be
> built from equivalence-based hashtable.  Equivalence-based hashtables can
be
> provided as a primitive or be written in E.  This means that, should we
> leave equivalence-based hashtables out of the initial libraries, our users
> can provide these for themselves.  But only if we provide equality-based
> hashtables.  Why?  One cannot write otherwise write reasonable algorithms
> for calculating transitive equivalence of possibly cyclic data.

Once hashtables are part of the library in some form, it seems incredibly
silly to make users reimplement them just because we were unwilling to allow
the hash function to be specified. E's internal implementation may never
change the hash, but that's not a good reason to force duplication of well
tested code.