*** nltk nltk (the Natural Language Toolkit, http://nltk.org/) is actively developed and available in the repositories of Debian and derivatives. To get it up and running should require no more than $> sudo apt-get install python-nltk (Footnote: At the time of writing (Sep 2013), the port of nltk to python3 is well underways, though not finished. If you have unicode data, as people working in natural language processing often will, then that release should save you many headaches.) *** fn-tbl The code of the fn-tbl toolkit (http://www.cs.jhu.edu/~rflorian/fntbl/) is mostly from around 2000, written for now-obsolete gcc 2.95 and gcc 3.0. However, with some small steps, it can be made to compile on a modern system. Here is what I had to change to compile with gcc 4.7.3 on Ubuntu 13.04 64-bit. 0. # Download source from # http://www.cs.jhu.edu/~rflorian/fntbl/, # unpack it somewhere: $> tar xvzf fnTBL-1.2.linux.tar.gz #and cd into the unpacked dir $> cd fnTBL-1.2 1. $> cp src/Makefile src/Makefile.orig # edit src/Makefile: # a) line 36, remove obsolete optimization pragma for pentium4 # b) line 63, some warnings have now become fatal errors by default -- # add -fpermissive which allows for sloppiness of earlier days # some other -Wno-X can be added to reduce noise $> diff src/Makefile.orig src/Makefile 36c36 < ARCHOPTIM = -march=pentium4 #-D__USE_MALLOC --- > ARCHOPTIM = #-D__USE_MALLOC 63c63 < WARNS = -Wall -Wno-sign-compare --- > WARNS = -Wall -Wno-sign-compare -Wno-parentheses -Wno-deprecated -Wno-unused-but-set-variable -fpermissive 2. $> cp src/fnTBL-train.cc src/fnTBL-train.cc.orig # edit src/fnTBL-train.cc: # a) line 883, change "static_cast" to "static_cast" $> diff src/fnTBL-train.cc.orig src/fnTBL-train.cc 883c883 < static_cast(j+PredicateTemplate::MaxForwardLookup)); --- > static_cast(j+PredicateTemplate::MaxForwardLookup)); 3. $> cp include/trie.h include/trie.h.orig # edit include/trie.h: # a) after line 70, add "include " $> diff include/trie.h.orig include/trie.h 70a71 > #include 4. #compile should now work $>make all *** mutbl Mutbl was written for commercial and now-outdated Sicstus Prolog 3.7.1 in 1999-2000. Its author, Torbjörn Lager, has indicated interest in reviving the project, and I and maybe others will help. The first step is to port it with no loss in functionality to the open sourced swipl prolog system. This is substantial work, far too long to be described here. As of October 2013, I have a working (though ugly) version. It will turn up on bitbucket.org (or similar), and hopefully be expanded with post-2000 advancements in TBL technology. *** brill's original implementation [UNFINISHED SECTION] Brill's original implementation is now only of historical value, and it is not clear that the archaeological pleasure of running it outweighs the work involved in setting it up. At present, the following contains mostly notes on possible strategies. The best bet to have the code compile on linux is perhaps to dedicate a discarded 32-bit machine (1995-1998 or so will do) to an early linux distro such as debian 1.3 or 2.0 from 1998-1999 http://archive.debian.org/debian/dists/. An alternative strategy is to do the same in a chroot environment on a modern system. targets would be roughly gcc 2.6, libc 1.09. gcc version history: http://gcc.gnu.org/releases.html libc version history: http://en.wikipedia.org/wiki/GNU_C_Library debian version history: http://en.wikipedia.org/wiki/Debian