rendered paste bodyalias LevDist {
var %s = $1, %t = $2, %m = $len(%s), %n = $len(%t)
var %i = 0
while (%x <= %m) {
var $+(%,%i,.,0) = %i
inc %i
}
var %j = 1
while (%j <= %n) {
var $+(%,0,.,%j) = %j
inc %j
}
var %i = 1
while (%i <= %m) {
var %j = 1
while (%j <= %n) {
if ($mid(%s,%i,1) == $mid(%t,%j,1)) var %cost = 0
else var %cost = 1
var $+(%,%i,.,%j) = $gettok($sorttok($calc($($+(%,$calc(%i - 1),.,%j),2) + 1) $calc($($+(%,%i,.,$calc(%j - 1)),2) + 1) $calc($($+(%,$calc(%i - 1),.,$calc(%j - 1)),2) + %cost),32,n),1,32)
inc %j
}
inc %i
}
return $($+(%,%m,.,%n),2)
}