After reviewing all of the discussion in this thread concerning
XHashTable, I find that I now agree with Ralf's original response.
Perhaps it is not a good design decision to pass a custom equality
when creating an XHashTable. In fact, I would go further and claim
that this also applies to the passing of a custom hash function which
is permitted in the current implementation of XHashTable.  This
"extra" feature of XHashTable should be removed.

It seemed overly ridged at first to insist on enforcing the contract
between the = and hash functions at the category level because this
forces the creation of a new domain in the case I had in mind, i.e.
using XHashTable in Kernel instead of SortedCache. But now I begin to
see this as the best option.  Perhaps what I want is something we
might call "InnerKernel" which exports a much simpler (cheaper) kind
of equality and an associated hash function. Then I would use
InnerKernel together with XHashTable in the Kernel domain itself to
implement a more "mathematical" equality. And now I also think Ralf
and Waldek were right to claim that really this has more to do with
representation than I was initially willing to admit.

That said, I really do want to get back to the original subject of
this thread: adding missing hash functions to Expression and to those
domains on which Expression is dependent.

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to