Haskell's IntMap performs no hashing, but also doesn't allow non-Int
keys. It stands to reason it would be very fast at the cost of a
decrease in utility.

By the way, I don't view this as a Haskell vs Clojure contest (GHC,
native code vs HotSpot, JVM), but rather one of data structures.
Perhaps the fact that they simply aren't interchangeable (due to
IntMap's type constraint on keys -- as mentioned above, it's always
Ints, not even (Integral a)) makes this a bit pointless (take a HAMT,
add the constraint that keys are all machine word-sized integers and
the problem of hash collisions just doesn't exist and you might be
able to make it faster).

Despite all that, it might be interesting (if only academically) to
compare worst-case asymptotic performance of IntMaps and HAMTs with
very large datasets, but writing appropriate test code could be
problematic, since it becomes rather important not to generate heaps
of garbage along the way (the collection of which could contribute
significantly to the observed performance characteristics of the
code).

Sincerely,
Michał

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to