The edit-distance package

[Tags:benchmark, bsd3, library, test]

Optimized edit distances for fuzzy matching, including Levenshtein and restricted Damerau-Levenshtein algorithms.

[Skip to Readme]


Versions 0.1, 0.1.1, 0.1.2, 0.2.0, 0.2.1,,,,
Dependencies array (>=0.1), base (>=4.5 && <5), containers (>=, random (>=1.0) [details]
License BSD3
Copyright (c) 2008-2013 Maximilian Bolinbroke
Author Max Bolingbroke <>
Maintainer Oleg Grenrus <>
Category Algorithms
Home page
Source repository head: git clone
Uploaded Sun Jul 12 17:57:09 UTC 2015 by phadej
Updated Wed Aug 10 15:33:44 UTC 2016 by phadej to revision 1
Distributions Arch:, Debian:, Fedora:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:, Tumbleweed:
Downloads 14062 total (989 in the last 30 days)
0 []
Status Docs available [build log]
Last success reported on 2015-07-12 [all 1 reports]
Hackage Matrix CI




Maintainer's Corner

For package maintainers and hackage trustees

Readme for edit-distance

Readme for edit-distance-

Edit Distance Algorithms

Build Status Hackage


To just install the library:

cabal configure
cabal build
cabal install


Edit distances algorithms for fuzzy matching. Specifically, this library provides:

They have been fairly heavily optimized. Indeed, for situations where one of the strings is under 64 characters long we use a rather neat "bit vector" algorithm: see the authors paper and the associated errata for more information. The algorithms could be faster, but they aren't yet slow enough to force us into improving the situation.


Text.EditDistance> levenshteinDistance defaultEditCosts "witch" "kitsch"