Subject: Re: Why can't a hash table be read/written as #S(HASH-TABLE ...)?
From: Erik Naggum <erik@naggum.no>
Date: 1999/04/09
Newsgroups: comp.lang.lisp
Message-ID: <3132642870691300@naggum.no>

* Tim Bradshaw <tfb@tfeb.org>
| I think the other argument against it is that you might not want to
| commit implementations to saying what information there is about a
| hashtable.  As well as the keys & values you might want other kinds of
| information -- what is the test function (and what if an implementation
| allows test functions other than the standard set -- now you need some
| way of printing arbitrary functions perhaps)?  How big is it, how fast
| does it grow?.

  I don't see a problem with #.(make-hash-table ...) except it would have
  been nice if one could "prime" a hash table in the MAKE-HASH-TABLE form,
  as in keyword arguments named INITIAL-CONTENTS (like MAKE-ARRAY) and/or
  INITIAL-KEYS and INITIAL-VALUES.  the lack of such an argument is a
  liability, not just when loading saved hash tables, but when building
  them the first time.  if we had a standard list notation for hash table
  initial contents (as we have for arrays), it would be trivial to create a
  print syntax for hash-tables, too.  so let's attack the basic problem.

#:Erik