From address@hidden Sat Jun 16 05:25:26 2001 Date: Fri, 25 May 2001 18:17:23 -0400 (EDT) From: Kevin Atkinson To: Joaquin Blas Subject: Re: Current state of ASpell First off I want to thank you for writing to me. Second, I would like to say that although Aspell has matured a good deal since you last wrote to me it still will not likely support all the languages you want (such as Asian) or compile on all the platforms you want (like Mac) or be as portable as you want (it uses same advanced C++), however as open sources spell checkers go you really have two main choices Ispell and Aspell. And of the two of them only Aspell is meant to be used as a library and is being actively maintained. Although I must say that AbiWord has made some progress in getting Aspell to be used as a library. And furthermore, not even Ispell supports Asian languages. In case you don't know already the Aspell homepage is http://aspell.sourceforge.net. The manual is available to browse online. I suggest you take a look at it. Even though Aspell is written in advanced C++ your program does not need to use any advanced C++ in order to use Aspell. This is due to a the Portable Spell Checker Interface Library (Pspell) which aims to provide a generic interface to Spell checker libraries installed on the system. The recommended way to use Aspell is though Pspell. Unlike Aspell, Pspell is written in a very low level C++. It even has A C interface so non C++ programs can use it. In fact I recommend using the C interface to avoid the nasty issues associated with C++ linkage. Pspell currently has two modules written for it, one of them uses Aspell and the other uses Ispell through a pipe. For more information on Pspell see http://pspell.sourceforge.net/. As with Aspell the Pspell manual is available online. Currently Pspell will only function correctly on a few Unix platforms. However it should be fairly easy to get it to work on other platforms. The main think is to get Pspell to probably build as a shared library and getting libltdl (Libtool's portable `dlopen' wrapper library) to work. Aspell itself will compile almost anywhere Gcc 2.95 or better will compile. This includes the Mingw version of the Gcc 2.95. However due to the issues mentioned above Pspell/Aspell will not function correctly on Win32. Unlike earlier version of Aspell, Aspell no longer requires the SGI STL so it should be able to compile with other compilers more easily however Aspell still uses very modern C++ so it will take a pretty decent compiler to compile Aspell. Aspell also uses a few POSIX functions. However, I keep them to a minimum and only use them when I absolutely have to. Also, most POSIX calls can optionally be disabled. I have zero experience with the Mac so I have no idea what it will take to get Pspell and Aspell to compile with the Mac. Aspell supports almost all languages that Ispell does. It is very easy to add support for other languages provided that they use some sort of alphabet. Aspell in unlikely to ever support Asian languages such as Chinese or Japanese. However if you find a spell checker that supports these languages it should be fairly easy to write a Pspell module for it. Pspell also supports Unicode. For more information on issues regarding other languages and Aspell see http://aspell.sourceforge.net/international/. I hope I have addresses all of your questions to your satisfaction and that you seriously consider using Aspell and perhaps help me improve it. Please discuss any concerns you have with me and remember as far as Open Source spell checkers go, you can't afford to be real picky. I look forward to hearing back from you. PS: Please fell free to distribute this message how you see fit. --- Kevin Atkinson kevina at users sourceforge net http://www.ibiblio.org/kevina/