Java as an Intermediate Language

Jonathan C. Hardwick and Jay Sipelstein
CMU-CS-96-161, 12 August 1996

HTML version, or 98k compressed postscript

Abstract: We present our experiences in using Java as an intermediate language for the high-level programming language NESL. First, we describe the design and implementation of a system for translating VCODE--the current intermediate language used by NESL--into Java. Second, we evaluate this translation by comparing the performance of the original VCODE implementation with several variants of the Java implementation. The translator was easy to build, and the generated Java code achieves reasonable performance when using a just-in-time compiler. We conclude that Java is attractive both as a compilation target for rapid prototyping of new programming languages and as a means of improving the portability of existing programming languages.

@techreport{ hardwick96java,
    author = "Jonathan C. Hardwick and Jay Sipelstein",
    title = "Java as an Intermediate Language",
    institution = "School of Computer Science, Carnegie Mellon University",
    number = "CMU-CS-96-161",
    month = "August",
    year = "1996",
    url = "" }