Re: Possible to write compiler to Java VM? (I volunteer to summarize)

bnm@indica.bbt.com (Brian N. Miller)
18 Jan 1996 21:24:58 -0500

          From comp.compilers

Related articles
Possible to write compiler to Java VM? (I volunteer to summarize) seibel@sirius.com (Peter Seibel) (1996-01-17)
Re: Possible to write compiler to Java VM? (I volunteer to summarize) bnm@indica.bbt.com (1996-01-18)
Re: Possible to write compiler to Java VM? (I volunteer to summarize) NoeC@po1.cpi.bls.gov (1996-01-19)
Re: Possible to write compiler to Java VM? (I volunteer to summarize) basile.starynkevitch@cea.fr (1996-01-20)
Re: Possible to write compiler to Java VM? (I volunteer to summarize) gough@dstc.qut.edu.au (John Gough) (1996-01-21)
Possible to write compiler to Java VM? (I volunteer to summarize) fjh@cs.mu.OZ.AU (1996-01-23)
Re: Possible to write compiler to Java VM? (I volunteer to summarize) andi@complang.tuwien.ac.at (Andreas Krall) (1996-01-23)
Re: Possible to write compiler to Java VM? (I volunteer to summarize) boutell.com@holly.aa.net (1996-01-23)
[11 later articles]
| List of all articles for this month |
From: bnm@indica.bbt.com (Brian N. Miller)
Newsgroups: comp.lang.java,comp.compilers
Date: 18 Jan 1996 21:24:58 -0500
Organization: BroadBand Technologies, RTP NC
References: 96-01-037
Keywords: translator

"Peter Seibel" <seibel@sirius.com> writes:
|So I'm asking you all: how easy/hard/impossible would it be to write a
|compiler for your favorite language(s) that compiles to Java VM
|byte-codes.


Don Box mentioned this in comp.object a few weeks ago, and the short
answer is: YES. A few companies are working on this as we speak;
sorry no details. An NCSA/Mosaic fellow mentioned Ada-95 as one
language in the works by some other company.


A compiler can target either a CPU or a VM. Either can be defined by
an ISA (instruction set architecture). ISAs are many and diverse, but
the science of negotiating their differences is maturing. Java's VM
is very high-level, particularly its memory semantics with garbage
collection and lacking pointers ala Lisp or Smalltalk. The
"easy/hard/impossible" of retuning a compiler's back end to target
Java's VM is probably most dependent on the source language's memory
model and whether or not the language is interpretable. Languages
like Lisp, Smalltalk, Prolog, Basic, Fortran, Pascal, Modula-n, Forth,
and Ada are probably candidates for retargeting. The structured
assembly languages like C/C++ and assembly itself, both which expect
direct random access to memory, are probably *not* suitable for Java's
VM. This is unfortunate because the bulk of the legacy code desiring
retranslation is probably already written in C/C++. The mismatch is
further obscured by the fact that Java and C++ source deceptively look
almost identical.
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.