[Haskell-cafe] ANN: unordered-containers - a new, faster hashing-based containers library
Roman Leshchinskiy
rl at cse.unsw.edu.au
Wed Feb 23 13:10:34 CET 2011
Johan Tibell wrote:
>
> I'm working on a patch that provides O(1) size right now. The trick is
> to define HashMap as:
>
> data HashMap k v = HM {-# UNPACK #-} !Int !(Tree k v)
Another possibility is:
data HashMap k v = HM Int !(Tree k v)
hashMap t = HM (treeSize t) t
That way size is O(n) on first use but O(1) afterwards. Then again, if
someone really needs this they can program it themselves. I've never
needed an O(1) size for maps.
Roman
More information about the Haskell-Cafe
mailing list