Calculate various string metrics efficiently in Haskell
Haskell
45
147 commits
updated Aug 2, 2026
The library provides efficient implementations of various string metric
algorithms. It works with strict Text values.
The current version of the package implements:
edit-distance packageThere is the
edit-distance package
whose scope overlaps with the scope of this package. The differences are:
edit-distance allows specifying costs for every operation when
calculating Levenshtein distance (insertion, deletion, substitution, and
transposition). This is rarely needed though in real-world applications,
IMO.
edit-distance only provides Levenshtein distance; text-metrics aims to
provide implementations of most string metric algorithms.
edit-distance works on Strings, while text-metrics works on strict
Text values.
Although we originally used C for speed, currently all functions are pure Haskell tuned for performance. See this blog post for more info.
Issues, bugs, and questions may be reported in the GitHub issue tracker for this project.
Pull requests are also welcome.
Copyright © 2016–present Mark Karpov
Distributed under the BSD 3-clause license.
21 followers · starred Sep 2016
35 followers · starred Feb 2017
Calculate various string metrics efficiently in Haskell
Haskell
45
147 commits
updated Aug 2, 2026
The library provides efficient implementations of various string metric
algorithms. It works with strict Text values.
The current version of the package implements:
edit-distance packageThere is the
edit-distance package
whose scope overlaps with the scope of this package. The differences are:
edit-distance allows specifying costs for every operation when
calculating Levenshtein distance (insertion, deletion, substitution, and
transposition). This is rarely needed though in real-world applications,
IMO.
edit-distance only provides Levenshtein distance; text-metrics aims to
provide implementations of most string metric algorithms.
edit-distance works on Strings, while text-metrics works on strict
Text values.
Although we originally used C for speed, currently all functions are pure Haskell tuned for performance. See this blog post for more info.
Issues, bugs, and questions may be reported in the GitHub issue tracker for this project.
Pull requests are also welcome.
Copyright © 2016–present Mark Karpov
Distributed under the BSD 3-clause license.
21 followers · starred Sep 2016
35 followers · starred Feb 2017