https://github.com/athanclark/tries
Various trie data types in Haskell
https://github.com/athanclark/tries
haskell trie typeclasses
Last synced: 5 months ago
JSON representation
Various trie data types in Haskell
- Host: GitHub
- URL: https://github.com/athanclark/tries
- Owner: athanclark
- License: bsd-3-clause
- Created: 2015-09-12T18:05:30.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2020-03-07T22:45:51.000Z (almost 6 years ago)
- Last Synced: 2025-08-04T10:08:14.109Z (6 months ago)
- Topics: haskell, trie, typeclasses
- Language: Haskell
- Homepage:
- Size: 2.19 MB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
tries
====
This is a collection and comparison of some basic, pure trie implementations.
So far, there is:
- a Map trie, using `Data.Map` from [containers](https://hackage.haskell.org/package/containers)
- a List trie, using `Data.Tree` from [containers](https://hackage.haskell.org/package/containers)
- a HashMap trie, using `Data.HashMap` from [unordered-containers](https://hackage.haskell.org/package/unordered-containers)
- a Knuth trie, using `Data.Tree.Knuth` from [rose-trees](https://hackage.haskell.org/package/rose-trees)
## Running the Tests
```bash
stack test
```
and
## Running the Benchmarks
for insert / delete:
```bash
stack bench --benchmark-arguments="--output profile.html"
```
for lookups:
```bash
stack bench --benchmark-arguments="--output profile-lookup.html" tries:bench:tries-bench-lookup
```