A hash table is a data structure that associates keys with values. The primary operation it supports efficiently is a lookup, where for a given identifier (key) is used to find the corresponding value. Hashes work by transforming the key using a hash function into a unique identifier used to locate the desired value.
Although associative arrays may seem at odds with Erlang's single-assignment nature, Erlang in fact provides several comparable data structures, including dictionaries (see the 'dict' module), hash tables (see the 'ets' module), and a variety of other implementations.
Consequently, Erlang can provide efficient (and safe) mechanisms for associative arrays.
See Category:HashRecipes for more on this topic.