C Compiler back-end generating Java Byte Code

Idea: Modify the Gnu C compiler (which is designed to be easily retargeted) to generate code for the Java Virtual Machine.

Motivation: To run as an applet in a web browser like Mosaic, a program must be compiled into Java byte code; at the moment, the only way to get Java byte code is to write your program in Java and compile it. The idea of this project is to translate C into Java byte code - so all kinds of ordinary C applications can be downloaded as Java applets.

The tricky bits:

The job:

Reading:

See the Java Virtual Machine specification, and Tim Wilkinson's Kaffe interpreter.

Equipment: Unix workstation.

Recommended tools: Unix, C/C++, gcc, kaffe.

Suitability: This is a research-level project with enormous potential scope. The basic prerequisites are 1) insight into performance, architecture and applications issues, 2) the practical ability to get complicated software to do what you want, and the imagination and clarity of thought to design good experiments.