Proposal: Add strict versions of foldlWithKey and
insertLookupWithKey to Data.Map
Johan Tibell
johan.tibell at gmail.com
Sun Aug 29 09:34:29 EDT 2010
http://hackage.haskell.org/trac/ghc/ticket/4278
Proposal: Add strict versions of foldlWithKey and insertLookupWithKey to
Data.Map
This proposal depends on #4277 [1].
The current Data.Map API lacks two important functions:
* A strict left (pre-order) fold -- needed to e.g. sum all the values in
a map efficiently.
* A strict insertLookupWithKey' -- needed to e.g. update an integer
counter and retrieve the previous value in a single traversal.
The benchmark we ran indicates that foldlWithKey' is 95% faster than its
lazy counter part.insertLookupWithKey' is only 6% faster, but the speedup is
highly dependent on how many times each element is update. Each element was
only updated once in our benchmark so real speedups should be larger.
The consideration period is 3 weeks.
1. http://hackage.haskell.org/trac/ghc/ticket/4277
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/libraries/attachments/20100829/d7214014/attachment.html
More information about the Libraries
mailing list