7. Hash Tables

A hash table is a very fast kind of lookup table, somewhat like
an alist in that it maps keys to corresponding values. It differs
from an alist in these ways:

Lookup in a hash table is extremely fast for large tables--in fact, the
time required is essentially independent of how many elements are
stored in the table. For smaller tables (a few tens of elements)
alists may still be faster because hash tables have a more-or-less
constant overhead.

The correspondences in a hash table are in no particular order.

There is no way to share structure between two hash tables,
the way two alists can share a common tail.

Emacs Lisp (starting with Emacs 21) provides a general-purpose hash
table data type, along with a series of functions for operating on them.
Hash tables have no read syntax, and print in hash notation, like this: