Fully dynamic d by opDotExp overloading
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Sat Apr 18 11:49:57 PDT 2009
Walter Bright wrote:
> Andrei Alexandrescu wrote:
>> Daniel Keep wrote:
>>> There's an interesting idea...
>>>
>>> Instead of "No member 'foo'", you could have "No member 'foo'; did you
>>> mean 'far' or 'fur'?"
>>
>> Heh. The string kernels in std.numeric
>> (http://erdani.dreamhosters.com/d/web/phobos/std_numeric.html) are to
>> help with exactly that.
>
> I remember, but can't find, some famous programmer posted to the net a
> simple spell checking algorithm that worked by counting letter
> additions, deletions, and transpositions to determine best matches.
I don't know who the famous programmer was but it sounds like he was
referring to one of the edit distances. std.algorithm has an
implementation of the popular Levenshtein distance.
http://erdani.dreamhosters.com/d/web/phobos/std_algorithm.html#levenshteinDistance
String kernels go way beyond that because they count the weighted length
of all gapped substrings common to two strings.
http://erdani.dreamhosters.com/d/web/phobos/std_numeric.html#gapWeightedSimilarity
With such a similarity, more subtle errors can be detected.
Andrei
More information about the Digitalmars-d
mailing list