Name: TernaryTrees Version: 0.1.3.0 Category: Data Structures Synopsis: Efficient pure ternary tree Sets and Maps Description: Ternary trees are an efficient structure often used for storing strings for fast lookups. This package implements a generic tree for storing lists of Ord instances, and a specialised String implementation which is about 30% faster than the generic version. . An example program is provided what shows how to use the package as a dictionary program for spell checking, and how it can be used to serialise data with Don Stewart's Data.Binary package. . From my testing, using the \/usr\/share\/dict\/words file on my system (over 230,000 words), inserting all words, checking they all exist in the tree, writing them to a binary file, reading them back in and checking the read in result is the same as the original takes slightly over 3 seconds using the StringSet. The written file is also slightly smaller than the input (by over 40% in some cases). . New in this version: . * Moved datatype definitions into .Internal modules so that testing can be performed, without needing to export their definitions in the main modules. . * Checked a lot of the source with HLint 1.6 and made some minor changes based on that ((mostly redundant brackets)). . © 2009 by Alex Mason (). BSD3 license. License: BSD3 License-file: LICENSE.txt Author: Alex Mason Maintainer: Alex Mason (irc: Axman6) build-type: Simple Cabal-Version: >= 1.2 Extra-Source-Files: Data/Map/TernaryMap.hs Data/Set/TernarySet.hs Data/Set/StringSet.hs Data/Set/StringSet/Internal.hs Data/Set/TernarySet/Internal.hs Data/Map/TernaryMap/Internal.hs Library Build-Depends: base >= 4.0.0.0, base < 5.0.0.0, binary >= 0.5.0.0 Exposed-modules: Data.Set.TernarySet, Data.Set.StringSet, Data.Map.TernaryMap Executable tdict Main-Is: Main.hs Build-Depends: base