The project aims to provide an efficient extensible abstraction for dealing with different spell checking libraries. Enchant is meant to provide a generic interface into various existing spell checking libaries. These include, but are not limited to: * Aspell/Pspell (intends to replace Ispell) * Ispell (old as sin, could be interpreted as a defacto standard) * MySpell/Hunspell (an OOo project, also used by Mozilla) * Uspell (primarily Yiddish, Hebrew, and Eastern European languages - hosted in AbiWord's CVS under the module "uspell") * Hspell (Hebrew) * Zemberek (Turkish) * Voikko (Finnish) * AppleSpell (Mac OSX) Enchant is also meant to be used in a cross-platform (XP) environment. Part of this means that Enchant wants to limit its number of external dependencies to 0, or as close is as humanly possible. Also, any enchant consumer (i.e. a Word Processor) should not need to know about what backend providers Enchant knows about. In fact, Enchant shouldn't even need to know this information itself. To accomplish this, all of Enchant's providers are DLLs.