Proposal: IntMap.differenceKeysSet for removing an IntSet of keys
Liyang HU
haskell.org at liyang.hu
Fri Jun 10 02:59:00 CEST 2011
Ticket: http://hackage.haskell.org/trac/ghc/ticket/5242
Currently, IntMap.difference ma mb removes all the keys in mb from ma,
where the elements of the two IntMaps can be of different types; the
elements of mb are not used.
There is no efficient way to remove an IntSet of keys, however. These
patches adds the IntMap.differenceKeysSet function—essentially a
copy/paste of difference—that satisfies the following property:
prop_DiffKeysSet :: Map Int -> Map () -> Bool
prop_DiffKeysSet t1 t2
= difference t1 t2 == differenceKeysSet t1 (keysSet t2)
Cons: Not so happy with the name. Code bloat.
Thanks,
/Liyang
More information about the Libraries
mailing list