SPELL: spellchecking library for Common Lisp.
License: BSD
Loading the SPELL system may initially take up to 20 seconds (on my machine) as an English dictionary is loaded and compiled into the resulting FASL file.
For loading the full version:
(ql:quickload :spell)
For loading the simple version:
(ql:quickload :spell/simple)
The difference between the full and the simple version is that the simple version answers only "does this word occur in the English dictionary?" with a boolean value, while the full version returns a list of all word meanings associated with that string.
Currently the only exported functions are #'ENGLISH-LOOKUP that accepts a string, and #'ENGLISH-CHECK-PARAGRAPH that checks a whole paragraph of text and returns a list of conses. Each cons represents a single word in the paragraph which has failed dictionary lookup, with the CAR and CDR being offsets in the original string outlining the word.
SPELL> (english-lookup "horse") (#<VERB {1007FD1FF3}> #<NOUN {1007FD2043}>) SPELL> (english-check-paragraph "In Polish, a horse is koń, and in German, it's das Pferd.") ((22 . 25) (47 . 50) (51 . 56))