Ideas for Google Summer of Code
Improve interoperability
- Task
Either to modify Apertium to accept different formats, to modify the other tools to accept the Apertium format, or alternatively write some kind of generic "glue" code that converts between them.
- Rationale
There is a lot of great free software that could be used with the Apertium engine. For example the Stuttgart FST (SFST) tools for morphological analysis/generation could be used in place of lttoolbox, and the constraint grammars from VISL could be used in place of apertium-tagger. Unfortunately these, along with many other tools have incompatible input/output formats.
- Programming requirements
Knowledge of C, C++, XML
- Linguistic requirements
None really, but anything is better than nothing.
Accent and diacritic restoration
- Task
Create an optional module to restore diacritics and accents on incoming text.
- Rationale
Many languages use diacritics and accents in normal writing, and Apertium is designed to use these, however in some places, especially for example. instant messaging, irc etc. these are often not used or untyped. This causes problems as for the engine, traduccion is not the same as traducción.
- Programming requirements
Knowledge of C, C++, XML
- Linguistic requirements
Be familiar with the issues surrounding accents and diacritics.
Porting
Windows, Mac OS/X port
- Task
Port Apertium to Windows and Mac OS/X complete with nice installers and all that jazz. Apertium currently compiles on Windows (see Apertium on Windows), but we'd like to see it compile with a free toolchain.
- Rationale
While we all might use GNU/Linux, there are a lot of people out there who don't, some of them use Microsoft's Windows, others use Mac OS. It would be nice for these people to use Apertium too.
- Programming requirements
C++, experience in programming on Windows
- Linguistic requirements
None.
Lexical selection
Interfaces
- Task
- Rationale
- Programming requirements
- Linguistic requirements
-- OpenOffice, Firefox, Evolution, Thunderbird, Gaim, ...