thoughts about Tunes OTOP & JavaVM

Alexandre Oliva oliva@dcc.unicamp.br
22 Jul 1999 19:36:19 -0300


On Jul 19, 1999, thomas.mahler@karstadt.de (Mahler Thomas) wrote:

> AFAIK Java IS portable as long as you only use JDK liraries.

If, when you say JDK, you really mean Sun JDK, that's absolutely
correct.  Unfortunately, most of the Java specs are not complete
enough for clean-room implementations such as Kaffe, GNU Classpath and
Cygnus' libgcj to duplicate Sun's behavior.  And then, even if they
were, there could always be bugs, either in JDK or in clean-room
implementations.

>> * Some good enough JVM exist on Linux, notably Kaffe (which has a
>> rather slow JIT implementation, dynamically compiling methods into
>> very bad x86 code).

Indeed.  Fortunately, Tim Wilkinson, from Transvirtual, is working on
a new, full-fledged JIT compiler, with global register allocation,
that will hopefully improve the generated code a lot.  Of course, it
won't generate code as optimized as an optimizing compiler, but we
(the Kaffe team) are planning to use gcj to pre-compile classes, so
you'll hopefully get very optimized code if you're willing to pay the
price of pre-compilation.

Another option is ElectricalFire, that's supposed to produce
high-performance machine code, but I haven't looked into it so far.
<URL:http://www.mozilla.org/projects/ef/>

> Guarana (a reflective system on top of JVM) uses Kaffe: They had to
> modify the VM and thus needed an open source VM. See
> http://www.dcc.unicamp.br/~oliva/guarana/index.html

A very interesting project, indeed :-D :-D

-- 
Alexandre Oliva http://www.dcc.unicamp.br/~oliva IC-Unicamp, Bra[sz]il
oliva@{dcc.unicamp.br,guarana.{org,com}} aoliva@{acm.org,computer.org}
oliva@{gnu.org,kaffe.org,{egcs,sourceware}.cygnus.com,samba.org}
** I may forward mail about projects to mailing lists; please use them