Basic HTML version of Foils prepared 7 Sept 1997

Foil 49 Java Features -- It's Somewhat Interpreted

From Introduction to Java to be used in (Scientific) Computing Basic Simulation Track for Computational Science CPS615 -- Fall Semester 97. by Geoffrey C. Fox, Nancy McCracken


Java represents a compromise between fully compiled (like C/C++) and fully interpreted (like Smalltalk or Perl) models.
Java "compiler" javac produces a binary bytecode output which is portable and much smaller than the real binary for a specific machine (Typical bytecode size is of order of the original source code, within a factor of 2).
Java "interpreter" executes this bytecode and is therefore less dynamic than e.g. Perl interpreter (which performs an equivalent bytecode construction internally and on-the-fly when reading the program source).
In general, the compilation process is: a) time consuming and b) platform specific. Hence, interpreters are built and used to facilitate a) rapid prototyping and/or b) portability.
Java model is focused on platform independence but the development throughput is also reasonable since the Java compiler is fast and generates compact bytecode output.



© Northeast Parallel Architectures Center, Syracuse University, npac@npac.syr.edu

If you have any comments about this server, send e-mail to webmaster@npac.syr.edu.

Page produced by wwwfoil on Sun Nov 29 1998