CAVA - Java AOT Compiler

I’m trying to develop java bytecode to c transpiler especially for game development needs.
Project was named “Cava” and lives at
Project’s goals are :
1- Keep executable size as small as possible to have much room for assets. (Simple hello world for Ios is about 1Mb)
2- Must support java exceptions for crash reporting. (Almost working)
3- A debugger is a must for bug free games :slight_smile: (Not perfect but working as Jdwp Server)
4- Integration with popular IDE’s (Planning)

Cava Libgdx backend and CocoaTouch integration is under heavy development under dev branch.

Any suggestions, bug reports etc are welcomed…

A worthy and noble effort!

Cas :slight_smile:

I’m a little puzzled - what environments have good C compilers but don’t have java ports? What kinds of java applications do you anticipate will use this?

Cross compiling java to something else is a fine exercise, has been done multiple times, and in some cases the result is a real asset. But you have to have a plan for the whole ecosystem, not just the user code.

This is an AOT solution, so whether there is a traditional Hotspot JVM available is neither here nor there.

Cas :slight_smile:

You missed my question - what is this intended to be used for, that is not already well
served by conventional java environments.

Presumably places for which a conventional Java environment is cumbersome. Android for example (which is where it originates as it happens), or iOS. Playstation. I don’t know! Anywhere where it’s C or bust.

Cas :slight_smile:

Commendable work.
I note that the author says compiler in the subject heading but transpiler in the main text.
I think ddyer has compiler in his mind.
A java language to C language transpiler is obviously a lot more realistic and useful than a compiler.

Repeat: compiling the java code you wrote as C is 1% of the problem. What replaces JRE?

Doubtless a supporting library of useful stuff.

Cas :slight_smile:

Do you realize how many million lines of code and thousands of man years are in that “other stuff”? Anyway, enough of our idle speculation, I’m hoping to hear from the OP.