func sqrDiff(x1, x2 gotypes.Value) float64 { result := 0.0 if x1.Type() == gotypes.Array { a := x1.Array() b := x1.Array() for i := range a { t := a[i].Real() - b[i].Real() result += t * t } } else { result = x1.Real() - x2.Real() result *= result } return result }