[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 64-bit extensions



> Date: Tue, 16 Sep 97 11:45:39 EDT
> From: Mike Griebling <grieblm@trt.allied.com>
> 
> > MVA > A Java back-end isn't really an option.  You can't efficiently
> > MVA > translate O2 to Java byte-code because there are lots of differences
> > MVA > in the type and class concepts of the languages, and Java byte-code
> > MVA > includes lots of Java type information.  
> > 
> > Maybe I'm reading more into this than is actually there, but I'm
> > interpreting this to mean that, with OOC as it is now, implementing a
> > Java byte-code backend would be very difficult.  I can understand
> > that.  
> 
> I can't.  Why is everyone saying that?

Last time I looked Java had no types matching the O2 RECORD or ARRAY
types.  It has something akin to `POINTER TO RECORD' and `POINTER TO
ARRAY OF ...', but no other structured types.  Since Java is type safe
even on the level of the byte-code interpreter you have to do lots of
fancy and time consuming stuff to emulate the full range of O2 types.

Not to mention all the other stuff that has to be emulated: Java has
no procedures (but static class functions), no modules (but classes),
no variable parameters, no variables of procedure type, etc.

If you are still wondering why the task of translating O2 to Java
isn't easy sit down and try to put together translation patterns that
map every O2 construct to legal Java code.

-- mva