Proposal: Non-allocating way to iterate over a Data.Map: traverseWithKey_

Ryan Newton rrnewton at
Tue Jul 30 15:35:11 CEST 2013

> (!) adjust adjustWithKey alter delete empty findWithDefault foldl
> foldl' foldlWithKey foldlWithKey' foldr foldr' foldrWithKey
> foldrWithKey' insert insertLookupWithKey insertWith insertWithKey
> lookup map mapAccum mapAccumRWithKey mapAccumWithKey mapMaybe
> mapMaybeWithKey mapWithKey member notMember toList update
> updateLookupWithKey updateWithKey

So then this becomes a recommendation for the implementation strategy then
right? (e.g. within containers)  Users probably still want a rich set of
variants, and they need to be packaged somewhere.  But it seems like
there's an argument that deriving these from a small core helps to ensure
that there are no bugs.

Yet that sounds like a battle for another day.  On the topic of this
proposal -- since Shachaf doesn't object, would you (Johan / Milan) mind
merging this patch?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Libraries mailing list