next up previous print clean
Next: No more make Up: Applet Previous: Makefile extraction

Jake: a Java implementation of make

A Java version of make would elegantly integrate makefiles and Java. If we had a Java version of GNU make - I would have to be called jake -, the applet could download the makefile (a simple text file) and interpret the rules accordingly. It could check dependencies and find the classes and inputs that it needs. Makefile rules would use relative filenames so that the browser could locate the resources relative to an applet's document base or code base. Since Java has its own mechanism to up-date Java classes from Java source files, we only need to maintain the rules that compute result files from source files.

We may prefer a Java make implementation for reproducible research that deviates from the standard GNU make. Program installation, the traditional task of GNU make, and document maintenance, the goal of our jake implementation, share the dependency and up-to-date mechanisms. Particularly, built-in commands for jake would list source, intermediate, and result files of a given target.

Since jake is written in Java, it is easily downloaded and installed. A browser may use jake without a reader of a document ever knowing about it. On the other hand, inexperienced authors of reproducible documents may prefer dealing with a well-documented software standard such as GNU make or a true Java version of it.


next up previous print clean
Next: No more make Up: Applet Previous: Makefile extraction
Stanford Exploration Project
3/8/1999