levenshtein: Levenshtein Distance Metric
| (require levenshtein) | package: levenshtein | 
1 Introduction
2 Basic Comparisons
procedure
→ exact-nonnegative-integer? a : vector? b : vector? pred : (-> any/c any/c boolean?) (vector-levenshtein/eq a b) → exact-nonnegative-integer? a : vector? b : vector? (vector-levenshtein/eqv a b) → exact-nonnegative-integer? a : vector? b : vector? (vector-levenshtein/equal a b) → exact-nonnegative-integer? a : vector? b : vector? (vector-levenshtein a b) → exact-nonnegative-integer? a : vector? b : vector? 
> (vector-levenshtein '#(6 6 6) '#(6 35 6 24 6 32)) 3 
procedure
→ exact-nonnegative-integer? a : list? b : list? pred : (-> any/c any/c boolean?) (list-levenshtein/eq a b) → exact-nonnegative-integer? a : list? b : list? (list-levenshtein/eqv a b) → exact-nonnegative-integer? a : list? b : list? (list-levenshtein/equal a b) → exact-nonnegative-integer? a : list? b : list? (list-levenshtein a b) → exact-nonnegative-integer? a : list? b : list? 
> (list-levenshtein/eq '(b c e x f y) '(a b c d e f)) 4 
> (string-levenshtein "adresse" "address") 2 
3 Type-Coercing Comparisons
procedure
(levenshtein/predicate a b pred) → exact-nonnegative-integer?
a : (or/c vector? string? list?) b : (or/c vector? string? list?) pred : (-> any/c any/c boolean?) 
> (levenshtein/predicate '#(#\A #\B #\C #\D) "aBXcD" char-ci=?) 1 
procedure
a : (or/c vector? string? list?) b : (or/c vector? string? list?) 
> (define g '#(#\g #\u #\m #\b #\o))
> (levenshtein g "gambol") 2 
> (levenshtein g "dumbo") 1 
> (levenshtein g "umbrage") 5 
4 History
- Version 2:0 —
2016-02-28 Moved from PLaneT to new package system.
Converted to McFly, including quickly guessing at contracts.
Fixed two dead URLs, urgently.
 - Version 1:3 —
2009-03-14 Documentation fixes.
 - Version 1:2 —
2009-02-24 License is now LGPL 3.
Tests moved out of main file.
Converted to author’s new Scheme administration system.
 - Version 1:1 —
2005-07-10 Added Testeez tests.
 - Version 1:0 —
2005-07-09 PLaneT release, and minor documentation changes.
 - Version 0.2 —
2004-07-06 Documentation changes.
 - Version 0.1 —
2004-05-13 First release. Tested only lightly, and today is the 13th, so caveat emptor.
 
5 Legal
Copyright 2004, 2005, 2009, 2016 Neil Van Dyke. This program is Free Software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See http://www.gnu.org/licenses/ for details. For other licenses and consulting, please contact the author.