Why class-based n-grams instead of type-based? Why stochastic beam search instead of genetic algorithms? Well, partly because those had been done before. But mostly because I felt like it. I’m doing this in my spare time, late at night or on weekends or during holidays. I knew class-based n-grams were harder, but they sounded interesting. I’d coded genetic algorithms before (once in JavaScript on in a web browser an old PowerPC – HA!) so I wanted to try another local search algorithm. I’m in it for the FUN.
Why an applet? I was influenced by Eric Scovel’s efforts at making gnoetry available as well as by Charles Hartman’s publically available programs. I realize there are good reasons why many researchers don’t make their programs available – not least of which is there’s a serious lack of fun in making it usable and fixing bugs and adding features that end-users demand. But I’m also feeling that old-school Hacker “giving back” ethic. So I swore I’d ignore feature requests and complaints about usability. That’s why I think of it as my sketchbook: it’s not a tool I’m building for other people to use; it’s something I built for myself to use, and which others are welcome to borrow and try out.