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

Issue: HASH-TABLE-ACCESS (version 2)

References:	hash-tables (Chapter 21 of CLtL)
Category:	ADDITION
Edit History: 13-Sept-88, version 1 by Walter van Roggen
              13-Oct-88, version 2 by Walter van Roggen
Problem Description:
  There are many characteristics of hash-tables which are specified upon
  creation but are not accessible afterwards.
  Add the following functions to the language:
    Returns the current rehash size of a hash table.
    Returns the current rehash threshold of a hash table.
  HASH-TABLE-SIZE hash-table
    Returns the current size of a hash table.
  HASH-TABLE-TEST hash-table
    Returns the test used for comparing keys in the hash table.
    By default the value will be EQL.
Current Practice:
  VAX LISP and Lucid 3.0 implement the proposal.
Cost to Implementors:
  Most of these should be trivial to implement, since the information
  must be present for nearly all types.
Cost to Users:
  None.  This is an upward-compatible extension.
Cost of Non-Adoption:
  The benefits would not be available in a portable fashion.
  Programs would be able to access useful information otherwise hidden.
  For example, it would allow programs to gain statistics about hash
  table usage that might enable better tuning.
  None of these are required to be SETF'able, though some might be
  reasonable implementation-dependent extensions.  Including such
  modification abilities might constrain some implementations unduly.
  This first appeared in ">GLS>clarifications.text" of 12/06/85.