about Silly Villains CGI


Function

The function of the Silly Villains CGI is to generate a description of a silly villain. A couple of examples that I enjoyed are:

Brief History

The second program I wrote for my children generated children's stories. Mostly the stories were minimalistic. However, two aspects of the stories were more robust

There have been several different versions of this program on different computer systems.

The Silly Villains CGI doesn't generate a whole story. It just generates a description of a villain. And it is directed at the child in adults rather than at children.

Grammar

There is a grammar that describes all the possible silly villain descriptions that the Silly Villains CGI can generate. It's a BNF (Backus Normal Form) grammar with a few extensions to deal with things like getting the article correct. Of course, if the grammar is updated (which it has been many times) then that likely changes what the possible silly villain descriptions are.

Development Environment

The grammar for the Silly Villains program is maintained in a home grown data base that is accessed through a perl/Tk interface on a PC running SuSE Linux. The same interface allows one to generate the perl code for the grammar and to test that code. The following diagram shows relationships between the main components of the test environment.

jpg showing development component relationships

Running Environment

The Silly Villains CGI is written in perl. It is being served up by an Apache server being run under BSD UNIX.