Developers at a university in China have developed their own Java version of LLVM. Their reasoning for re-implementing LLVM is that they prefer Java to the C++ language.
Students created JLLVM, which is just a Java version of LLVM core. Why did they came up with their own Java-brewed version of LLVM? "Our motivation is simple: The LLVM project is a great job. But it is for C++ developers. *It's difficult for Java developers to analysis LLVM IR* (intermediate representation). So we build a project use Java to implement a LLVM Core so that we can analysis LLVM IR with Java."
So far though not many people have been interested in this Java version of LLVM based upon the limited responses
over the past two weeks to its mailing list announcement.
The announcement went on to say, "The core technique is ANTLR. We use ANTLR to recognize LLVM IR and generate parser. And the Java class is organized as the official LLVM core of C++ version. We only implement several necessary feature of LLVM and we will keep on this work if some else like our project."
JLLVM uses "ANother Tool for Language Recognition" as its parser for going through the LLVM intermediate representation. The LLVM elements are then stored in a Java class. "At present, JLLVM has all the features needed to analysis LLVM IR. As LLVM is a large project and we need more time to complete some other feature and make JLLVM more easier to use."
For those interested in more information about this Java implementation of LLVM can find out additional details from the university's web-site