Ich möchte einen In-Memory-Datenspeicher für einen Webdienst in Haskell implementieren. Ich möchte Transaktionen in der STM
Monade ausführen .
Wenn ich die Hash-Tabelle Steam Haskell google, erhalte ich nur Folgendes: Data. BTree. HashTable. STM.
Der Modulname und die Komplexität legen nahe, dass dies als Baum implementiert ist. Ich würde denken, dass ein Array für veränderbare Hash-Tabellen effizienter sein sollte.
Gibt es einen Grund, die Verwendung eines Arrays für eine STM
Hashtabelle zu vermeiden ? Erhalte ich mit dieser Steam-Hash-Tabelle etwas oder sollte ich nur einen Steam-Ref zu einem verwenden IntMap
?
Store ! blah
und Store ! baz
sequentiell sein müssen