Stephen J. Turnbull wrote:
Mike Kupfer writes:
> The main issue is that the default format for printing a hash table
> cannot be read back in.
That's by design. I don't really understand why anybody wants a
read-able format for hash tables. alists or plists are much prettier.
And probably more portable. Maybe I'll suggest that to the Gnus folks.
In the #s format, :size corresponds to the :size
hint to make-hash-table, ie, the expected long-run maximum number of
elements. (That's why the representation printed has a "1" there in
your example.) A 29/29 hash table gives poor performance, so XEmacs
bumps the table to the next size.
Hmm. Okay, I missed the fact that the string generated by XEmacs had 1,
and my made-up example (which was older and came from reviewing the
documentation) had 29.
But I still find this confusing. I would expect--both based on your
description and the documentation--that
#s(hash-table :size 29 :data ("a" "foo"))
would give me a table sized to hold 29 elements, but currently only
holding 1 element.
Really, the size of a hash table is none-of-your-business-thank-you-
very-much. ;-)
Perhaps, except I was afraid that every round-trip would result in a
larger hash table. That would eventually become my business. ;-)
And if it's not my business, then XEmacs probably shouldn't expose it in
the default printed representation.
mike
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-beta