How do you implement an efficient hash table or something equivalent in Haskell?
Please no Data.Map because that is slow as fuck as any linked structure because such things are extremely cache unfriendly.
>>56311428
https://github.com/search?utf8=%E2%9C%93&q=hash+table+++language%3AHaskell&type=Repositories&ref=searchresults
>>56311591
>efficient
>>56311428
Have you determined that the cache misses are are what should be optimized in your use-case?
By writing it in C.
>>56311428
You could use some kind of trie data structure.
They're really efficient when implementing an associative array for example.
Not many people have even heard of tries though, so you get bonus hipster points.
>>56312661
They're nowhere as efficient as hash tables though, anon. It takes the sort of finely tuned mind that uses Haskell to believe that tries are "really efficient" in a discussion about hash tables. Or really any other dictionary structure - tries are space efficient, but no better performance than binary trees (usually worse) unless it's a radix trie, but that uses a hash table internally so haskell is fucked again. On the plus side, haskell uses the most retarded string representation since Erlang, so even a slow non-radix trie may be a net win by avoiding the stupidly slow string comparisons. But that says more bad about Haskell than it says anything good about tries.