trie-simple: Simple Map-based Trie

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Warnings:

Trie data structure TMap to hold mapping from list of characters to something, i.e. isomorphic to `Map [c] v`. It is more efficient to query compared to Map. Also, it supports extra operation like prefix matching. This package also contains TSet, which is isomorphic to Set of lists of characters.


[Skip to Readme]

Properties

Versions 0.4.1.1, 0.4.1.1, 0.4.2
Change log CHANGELOG.md
Dependencies base (>=4.9 && <4.13), containers (>=0.5.7.1 && <0.6), deepseq (>=1.4.2.0 && <1.5), mtl (>=2.2.1 && <2.3) [details]
License BSD-3-Clause
Copyright Koji Miyazato
Author Koji Miyazato
Maintainer viercc@gmail.com
Category Data Structure
Source repo head: git clone https://github.com/viercc/trie-simple -b master
Uploaded by viercc at 2018-12-01T23:37:20Z

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for trie-simple-0.4.1.1

[back to package description]

trie-simple

Trie data structure TMap to hold mapping from list of characters to something, i.e. isomorphic to Map [c] v. This package also contains TSet, which is isomorphic to Set of lists of characters.

This package implements these structures using Map from containers package, and require the character type to be only Ord.

Advantages of using this package over Map or Set are:

Benchmarks

Benchmarks compared against plain Map and Set.

benchmark chart for TMap

benchmark chart for TSet

About License

LICENSE tells the licence of this project, EXCEPT one file for benchmark input data. See ABOUT for that file.

If you install trie-simple from Hackage, that input data is not included in the distributed files.