To help maintain Jest, its classes are accompanied by simple test routines. Furthermore, Jest includes a series of research-type examples that, due to our laboratory's reproducible research mechanism, are recomputed at the push of a button. To maintain Jest, we routinely and automatically execute all of Jest's test and example routines. Furthermore, the test and research cases complement Jest's Javadoc pages by offering a programmer illustrative examples.
In general, Jest's code is more readable than comparable C and Fortran implementations. On the numerical battlefield, when numbers are added and square roots are taken, Java is superior to C due to its lack of pointers and addresses. Here Java's readability is generally comparable to Fortran. On the abstract algorithmic level of solvers, Jest's mathematical objects are unsurpassed in conciseness and generality. Overall, as in every object-oriented language, a lot of dirty details, e.g., an array's parameters or input and output details, are hidden in Jest's objects.
For the future, I envision reproducible electronic documents that distribute scientific research on the World Wide Web. Reproducible research documents Schwab et al. (1996); Schwab and Claerbout (1996); Schwab and Schroeder (1995) organize an researcher's writings and his software implementation of his ideas into easily accessed and maintained packages. The online version of an electronic document, as shown in Figure 3, offers readers buttons that initiate the recomputation of the document's results.
Due to Java's security features, an electronic document implemented as a Java applet can be downloaded and safely executed by any standard Web browser. Thereby, Java enables us to combine a scientific article with its underlying software while avoiding the complications of traditional software installation and compilation. The resulting convenience and completeness of reproducible Web documents should foster collaboration among researchers and increase research efficiency. Jest currently contains Java applications. However, first experiments (Figure 3) show how Jest's application can be extended to Java applets and how they can be integrated into a reproducible Web document.