Cabal-Version: >= 1.8
Name: language-spelling
Version: 0.2
Author: Francesco Mazzoli (f@mazzo.li)
Maintainer: Francesco Mazzoli (f@mazzo.li)
Build-Type: Simple
License: PublicDomain
Build-Type: Simple
Category: NLP
Synopsis: Various tools to detect/correct mistakes in words
Tested-With: GHC==7.4.1
Homepage: https://github.com/bitonic/language-spelling
Bug-Reports: https://github.com/bitonic/language-spelling/issues
Description:
Haskell library meant to be a set of tools to correct spelling mistakes,
homophones, and OCR errors.
.
Sample session:
.
@
ghci> :m + Language.Distance.Search.BK
ghci> distance \"foo\" \"bar\" :: Distance DamerauLevenshtein
3
ghci> let bk = foldr insert empty [\"foo\", \"foa\", \"fooa\", \"ofo\", \"arstu\", \"nana\", \"faa\"] :: BKTree String 'DamerauLevenshtein'
ghci> query 0 \"foo\" bk
[(\"foo\",Distance 0)]
ghci> query 2 \"foo\" bk
[(\"faa\",Distance 2),(\"foa\",Distance 1),(\"fooa\",Distance 1),(\"foo\",Distance 0),(\"ofo\",Distance 1)]
@
.
TODO:
.
* Phonetic algorithms: metaphone, double metaphone, maybe others
.
* Tests and better benchmarking
.
* Cost tuning when searching
source-repository head
type: git
location: git://github.com/bitonic/language-spelling.git
Library
Build-Depends: base >= 3 && < 5,
array,
bytestring,
containers,
ListLike,
listlike-instances,
text,
vector >= 0.5
GHC-Options: -Werror -O2
Exposed-Modules: Language.Distance,
Language.Distance.Internal,
Language.Distance.Search,
Language.Distance.Search.BK,
Language.Distance.Search.TST,
Language.Phonetic,
Language.Phonetic.Internal,
Data.BKTree,
Data.TST,
Data.TSTSet
Other-Modules: Language.Distance.Search.Class,
Language.Phonetic.Soundex,
Language.Phonetic.Encoder
Test-Suite benchmarks
Type: exitcode-stdio-1.0
Main-Is: bench.hs
GHC-Options: -O2 -Werror
Build-Depends: base,
criterion,
random-shuffle,
bytestring,
time