TrieMap: Automatic type inference of generalized tries with Template Haskell.

[ algorithms, bsd3, library ] [ Propose Tags ]

Provides a efficient and compact implementation of generalized tries, and Template Haskell tools to generate the necessary translation code. This is meant as a drop-in replacement for Data.Map. The most recent release combines zipper-based ideas from recently proposed changes to Data.Map, as well as heavily optimized ByteString and Vector instances based on the vector package. Since version 2, unit tests and benchmarks have been taken much more seriously, and major optimizations have been made. Compared to Data.Map and Data.Set, on e.g. ByteStrings, TrieMaps support 6-12x faster union, intersection, and difference operations, 2x faster lookup, but 2x slower toList, and 4x slower filter. Other operations are closely tied. TrieMaps tend to use somewhat more memory, and frequently perform better with increased heap space and allocation area.

Versions [faq],,, 0.5.0, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.6.0, 0.6.1, 0.6.2, 0.6.3, 0.7.0, 0.7.1, 0.7.2, 1.0.0, 1.5.0, 2.0.0, 2.0.1, 2.0.2, 2.0.3, 3.0.0, 3.0.1, 4.0.0, 4.0.1, 4.1.0
Dependencies base (<, bytestring, containers, primitive, template-haskell, th-expand-syns, vector [details]
License BSD-3-Clause
Author Louis Wasserman
Category Algorithms
Source repo head: git clone
Uploaded by LouisWasserman at Fri Feb 4 16:02:20 UTC 2011
Distributions NixOS:4.1.0
Downloads 11870 total (384 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs uploaded by user
Build status unknown [no reports yet]




Maintainer's Corner

For package maintainers and hackage trustees