Next: srfi hash-tables rationale, Previous: srfi hash-tables abstract, Up: srfi hash-tables [Index]
There is no single best way to make hash tables. The tables presented
in this SRFI aim at being both conceptually simple and usable for a
wide variety of applications. Even though a portable implementation is
provided, Scheme implementations can speed things up considerably by
e.g. providing an internal hash function for symbols. Moreover, almost
every Scheme implementation already has some kind of low–level hash
table functionality, because that’s the natural way to implement the
global environment, and specifically, to provide support for
string->symbol. There might be some benefit in integration
between implementation–specific environment data types and the hash
table API presented here; however, these issues are left open.
This SRFI does not conform to the interface of maps presented in SRFI-44. Following SRFI-44 would seriously cripple the interface of hash tables. The naming of the operations for maps in SRFI-44 goes against common use and is unnatural. However, this SRFI has been written so that it does not prevent a SRFI-44 API to hash tables. An implementation supporting both SRFI-44 and this SRFI is encouraged to provide a SRFI-44 interface to hash tables in addition to the one presented here.