[cdr-discuss] Order of arguments in hashref

Chris Dean ctdean at sokitomi.com
Thu Nov 23 00:15:40 UTC 2006


Thanks for putting together the genhash proposal.  It's a much needed
extension to CL hash tables!

I might be coming late to the discussion of genhash, so I'll start
with a simple question:

Why is the order of arguments in HASHREF first the key then the table
rather that the table and then the key?  Here is how it is now:

  (hashref key table &optional (default nil)) 

It has always bothered me that CL:GETHASH, CL:REMHASH, and CL:NTH have
the accessor (in this case the key and the index) as the first arg
while AREF, SVREF, CHAR, SCHAR, and ELT have the the container as the
first arg (in this case the array, vector, string, and sequence).

I think the answer to my question might be that HASHREF is consistent
with the calling order in GETHASH.  

My preference is to have the ordering be table and then key and be
consistent with ELT et.al. 

Cheers,
Chris Dean



More information about the cdr-discuss mailing list