[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Comparing functions

> In looking at the definition for make-hash-table, I contend that a valid
> implementation has no need for function-comparing primitives.

That is expected since function comparing primitives that determine "do
these compute the same function" are impossible.

> It does say that the :test argument "must be one of the threee values 
> #'eq, #'eql, or #'equal, or one of the three symbols eq, eql, or equal".

I am assuming you agree that MAKE-HASH-TABLE does need some way to
determine whether the :TEST argument is EQ, #'EQ, EQL, #'EQL, EQUAL
or #'EQUAL, because it does, of course, need some way to do this.

> So if temporary hash tables need to test the :test argument, which they do,
> they can't rely on MAKE-HASH-TABLE already having established the need for
> the requisite primitive.

Yes they can.

They do not need any other test than whatever means MAKE-HASH-TABLE
uses to determine whether to make an EQ table or an EQL or EQUAL one.

-- Jeff