Evolution of a Computer Application
Journal of Online Mathematics and its Applications (JOMA)
vol 3 (September 2003)        [200+ pages]

JOMA article (web)   
preprint (pdf)            

JOMA is the on-line journal of the MAA. It is devoted to exploring innovative ways to use the Internet as a medium of publication. This article is an experiment in producing a publication which combines text exposition and computer access.

The article concerns the process of using user-created special-purpose languages to produce software systems for mathematics research or instruction. It develops an approach in which a language is created for a specific target area and is used to write a skeleton system. As work progresses the language is extended and the system "fleshed out". Thus the software evolves in reponse to its use.

The article combines text exposition with access to two versions of a Groups system. The first was written in 1990 and represents the early stages of what was to become Groups32. The second is the current version of Groups32. It discusses the software development techniques involved in producing the system.

A reader can access a non-programmable version of Groups32 on the Internet. The article itself provides programmable versions of the 1990 and 2000 systems, together with a development environment, for readers who wish to experiment with programming. (The executables are for Windows only.)