A very bad choice for Java, even more so for other languages. It's kind of the latest fad, but stay away from it if you can. Kaffe is a free implementation of the JVM by the GNU project. This includes both an interpreter and JIT compiler for various systems. Programming Languages for the Java Virtual Machine Juice Juice is a portable code structure which could be said to store a dataflow tree as might be created by a powerful compiler.
Source code is available.
It's made to work with Oberon , but it's designed to be mostly language-independant, except that the language must have GC, runtime typing capability, and so on. Squeak Squeak is a free VM used to implement a Smalltalk-80 superset, including full source in Smalltalk and a reduced Smalltalk to C translator. Originally developed by Apple for its MacIntosh, now free software and ported to all common 32-bit architectures . These you shouldn't use, least you'll become the hostage of the vendors who lock you and whoever else you will communicate with you into their technology. However attractive a proprietary technology may appear, it shouldn't be used as a means of communication.