Bringing the IntMap API up to par with the Map API

Johan Tibell johan.tibell at gmail.com
Thu Aug 19 02:10:31 EDT 2010


On Thu, Aug 19, 2010 at 3:41 AM, wren ng thornton <
wren at community.haskell.org> wrote:

> Johan Tibell wrote:
>
>> I've created a proposal to add a strict left fold, see separate email. In
>> the process of doing so I've discovered that the whole foo/fooWithKey
>> duplication is unnecessary, at least from a performance perspective.
>> [...]
>>
>> It's probably not feasible to remove the duplication from e.g. the
>> Data.Map
>> API, but it's worth keeping in mind when designing data structure APIs in
>> the future.
>>
>
> For something like Data.Map, the API is definitely redundant (though we may
> wish to keep the simplified versions around in Data.Map.Convenience or the
> like). And even though Data.IntMap is technically a trie, it'd probably be
> fine without them too--- since the keys are of fixed size, and can be
> combined with bit twiddling instead of rearranging memory.
>

The keys are actually stored in the leaves in the IntMap keys so what I said
about Map applies to IntMap as well.

-- Johan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/libraries/attachments/20100819/7ee09a55/attachment.html


More information about the Libraries mailing list