ComputingComputer ScienceComputer SystemsCompilersDistributed SystemsProgramming LanguagesAhead-of-time CompilationApplication Programming InterfacesCpu SchedulingJust-in-time CompilationRuntime EnvironmentsRuntime SystemsCompiler DesignGarbage Collection AlgorithmsOpen-source Software DevelopmentPointer AnalysisScheduling AlgorithmsVirtual Machine Just-in-time CompilationVirtual Machine PortabilityVirtual Machines
Joeq is a virtual machine and compiler infrastructure designed to facilitate research in virtual machine technologies such as Just-In-Time and Ahead-Of-Time compilation, advanced garbage collection techniques, distributed computation, sophisticated scheduling algorithms, and advanced run time techniques. Joeq is entirely implemented in Java, leading to reliability, portability, maintainability, and efficiency. It is also language-independent, so code from any supported language can be seamlessly compiled, linked, and executed --- all dynamically. Each component of the virtual machine is written to be independent with a general but well-defined interface, making it easy to experiment with new ideas. Joeq is released as open source software, and is being used as a framework by researchers all over the world on topics ranging from automatic distributed virtual machines to whole-program pointer analysis.
22
Graph-Based Algorithms for Boolean Function Manipulation
Bryant · IEEE Transactions on Computers · 1986 · 8.9K citations · Full text
Fast static analysis of C++ virtual function calls
David F. Bacon, Peter F. Sweeney · 1996 · 512 citations
Compositional pointer and escape analysis for Java programs
John Whaley, Martin Rinard · 1999 · 443 citations