Why Virtual Machines? (was: C++ -> Java VM compiler)

p.froehlich@link-m.de
25 Jan 1997 22:17:34 -0500

          From comp.compilers

Related articles
Re: C++ -> Java VM compiler aszs@enternet.com (1997-01-12)
Re: C++ -> Java VM compiler gah@u.washington.edu (1997-01-16)
Re: C++ -> Java VM compiler kuznetso@MIT.EDU (1997-01-17)
Why Virtual Machines? (was: C++ -> Java VM compiler) p.froehlich@link-m.de (1997-01-25)
Re: Why Virtual Machines? (was: C++ -> Java VM compiler) robison@kai.com (Arch Robison) (1997-01-29)
Re: Why Virtual Machines? (was: C++ -> Java VM compiler) albaugh@agames.com (1997-01-29)
Re: Why Virtual Machines? (was: C++ -> Java VM compiler) jhummel@esp.ICS.UCI.EDU (Joe Hummel) (1997-01-30)
Re: Why Virtual Machines? (was: C++ -> Java VM compiler) haahr@netcom.com (1997-02-02)
Re: Why Virtual Machines? (was: C++ -> Java VM compiler) nr@adder.cs.virginia.edu (Norman Ramsey) (1997-02-02)
Re: Why Virtual Machines? (was: C++ -> Java VM compiler) Bronikov@srv2.ic.net (Dmitri Bronnikov) (1997-02-02)
[7 later articles]
| List of all articles for this month |

From: p.froehlich@link-m.de
Newsgroups: comp.compilers
Date: 25 Jan 1997 22:17:34 -0500
Organization: Compilers Central
References: <01bbfca0$a284a6f0$041b6682@tecel> 97-01-094 97-01-120 97-01-139
Keywords: Java, architecture, question

Hi there!


Fri 17.01.1997, Eugene Kuznetsov wrote:


> 3. Not all JVM's are created equal, and some may relax the spec. In
> addition, some vendors are working on "unified VM's" that are
> similar to the Java VM, but also include additions for executing C++
> & C code more efficiently.


      I don't really understand all this "hype" about virtual machines
(here and in other newsgroups). Why do most people out there seem to
think that VMs are the best approach to portable binary software?


      The first VM I can remember is the pCode-Interpreter for Pascal,
and AFAIK it was dumped for efficiency reasons. Okay, one can say
"Today's machines are powerful enough to support VMs on a large
scale.", but really *why* should one do that when a more efficient and
easier to understand method is already present, namely in the guise of
semantic dictionary encoding (SDE) and on-the-fly compilation.


      The most advanced project in this direction is (again AFAIK) Juice,
an implementation of these techniques for "internet programming" like
JAVA. Details on Juice can be found at


                                              http://www.ics.uci.edu/~juice


and details on implementation aspects of on-the-fly compilation can be
found in


@PHDTHESIS{franz:thesis,
    AUTHOR = {Franz, Michael},
    TITLE = {Code-Generation On-the-Fly: A Key to Portable Software},
    SCHOOL = {Eidgen{\"o}ssische Technische Hochschule},
    YEAR = {1994},
    ADDRESS = {Z{\"u}rich}
}


which should also be availiable on the ETH ftp server at


                                            http://www.inf.ethz.ch/Oberon/


So, the final question: Why base the future on a 70's design?


By(T)e...
                  Peter...
[I was under the impression that the JVM was designed to make it easy to
generate efficient code at or just before runtime. -John]


--


Post a followup to this message

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