Lessons Learned
Jikes RVM is a successful research virtual machine, providing performance close to the state-of-the-art in a flexible and easy-to-extend manner. Being written in the language supported by the runtime allows close integration and reuse of components. The use of Java allows a simple-to-understand codebase, good modularity, and the use of high-quality tools, such as IDEs.
The Java language and the implementations of JVMs are developing, and Jikes RVM has and will continue to develop along with these changes. One interesting development is the X10 programming language, which tackles the issue of how programmers will develop applications for many core systems by providing thread-safety guarantees, just as garbage collection provides memory-safety guarantees in Java. Jikes RVM’s codebase already provides an excellent test bed for development ideas with X10. As JVM implementations create new optimizations, such as new garbage-collection techniques or object inlining, the ability to slot these optimizations into a framework such as Jikes RVM means the runtime, compilers, and codebase also improve and demonstrate the strength of metacircularity.
The extensibility of a metacircular environment make Jikes RVM an excellent platform for multilanguage virtual machine research. This extension would also allow aspects of Jikes RVM to be written in different programming languages.
There are many other exciting extensions to Jikes RVM and related projects, including support for languages ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access