I created a basic spell checker that works very well, and is very fast. Right now all it does is tell you a word isn't spelled correctly, and I'd like to expand it a bit.

I created a class that returns suggested spellings for misspelled words, based on the SOUNDEX algorithm. There are some weaknesses to a pure SOUNDEX system, and I was wondering if there's a better algorithm out there that someone can suggest.

"There's nothing more dangerous than a resourceful idiot." ---Dilbert