Text completion: Difference between revisions
Content added Content deleted
m (added whitespace for the TOC (table of contents).) |
(Add Factor) |
||
Line 161: | Line 161: | ||
Words which are 70,0% similar: |
Words which are 70,0% similar: |
||
cognition collision combustion commotion companion compassion complain complicity compton compulsion compunction computation condition contrition demolition incompletion volition |
cognition collision combustion commotion companion compassion complain complicity compton compulsion compunction computation condition contrition demolition incompletion volition |
||
</pre> |
|||
=={{header|Factor}}== |
|||
{{trans|Julia}} |
|||
{{works with|Factor|0.99 2020-07-03}} |
|||
<lang factor>USING: formatting fry http.client io kernel lcs literals math |
|||
math.ranges namespaces prettyprint.config sequences splitting |
|||
wrap.strings ; |
|||
CONSTANT: words $[ |
|||
"https://www.mit.edu/~ecprice/wordlist.10000" http-get nip |
|||
"\n" split harvest |
|||
] |
|||
CONSTANT: word "complition" |
|||
: lev-dist-of ( str n -- n ) |
|||
[ words ] 2dip '[ _ levenshtein _ = ] filter ; |
|||
: similarity ( n -- x ) word length / 100 * 100 swap - ; |
|||
10000 margin set ! Prevent prettyprinter from wrapping sequences |
|||
4 [1,b] [ |
|||
dup [ similarity ] [ drop word ] [ word swap lev-dist-of ] tri |
|||
"Words at Levenshtein distance of %d (%.1f%% similarity) from %u:\n%u\n\n" printf |
|||
] each</lang> |
|||
{{out}} |
|||
<pre> |
|||
Words at Levenshtein distance of 1 (90.0% similarity) from "complition": |
|||
{ "completion" } |
|||
Words at Levenshtein distance of 2 (80.0% similarity) from "complition": |
|||
{ "coalition" "competition" "compilation" "composition" } |
|||
Words at Levenshtein distance of 3 (70.0% similarity) from "complition": |
|||
{ "companion" "competitions" "completing" "complications" "computation" "condition" } |
|||
Words at Levenshtein distance of 4 (60.0% similarity) from "complition": |
|||
{ "collection" "combination" "commission" "comparison" "compensation" "competing" "competitive" "complaint" "complete" "completed" "completely" "complexity" "compliance" "compliant" "compression" "computing" "conclusion" "conditions" "connection" "convention" "conviction" "cooperation" "corporation" "correction" "correlation" "corruption" "nomination" "opinion" "opposition" "option" "pollution" "population" "position" "simulation" "solution" } |
|||
</pre> |
</pre> |
||