Compiler Research References
[Chiba 2004]
(Summary: Javassist is a powerful new
library in the field of bytecode engineering. It
allows developers to add a new method to a compiled class, modify a method
body, and so forth. Unlike other similar libraries, Javassist
enables this without knowledge of Java bytecode or
the structure of a class file.)
[Apache
Software Foundation 2003] Apache Software Foundation.
BCEL, ByteCode Engineering Library, http://jakarta.apache.org/bcel/,
2003.
(Summary:
The Byte Code Engineering Library is intended to give users a convenient
possibility to analyze, create, and manipulate (binary) Java class files (those
ending with .class). Classes are represented by objects which contain all the
symbolic information of the given class: methods, fields and byte code
instructions, in particular.)
[Kegel 2003] Kegel, Hannes.
jclasslib bytecode viewer, http://www.ej-technologies.com/download/jclasslib/files.html,
2003.
(Summary: jclasslib bytecode
viewer is a tool that visualizes all aspects of compiled Java class files and
the contained bytecode. In addition, it contains a
library that enables developers to read, modify and write Java class files and bytecode.)
[Lindholm et. al 1996]
Lindhom,
Tim and Yellin, Frank. The JavaTM
Virtual Machine Specification, http://java.sun.com/docs/books/vmspec/html/VMSpecTOC.doc.html,
1996.
(Summary:
Java Specification – particular interest is the java class file format,
http://java.sun.com/docs/books/vmspec/html/ClassFile.doc.html)
[International Business Machines, 2004] International Business Machines, Jikes RVM (the Jikes Research Virtual Machine), http://www-124.ibm.com/developerworks/oss/jikesrvm/,
2004.
(Summary: Jikes RVM (the Jikes Research Virtual Machine) provides the research
community with a flexible open
testbed to prototype virtual machine technologies and
experiment with a large variety of design alternatives)
[
(Summary:
Java(tm)
Based Constructor of Useful Parsers (CUP for short). CUP is a system for
generating LALR)
[Appel 1998] Appel, Andrew. Modern
Compiler Implementation in Java, http://www.cs.princeton.edu/~appel/modern/java/,
1998.
(Summary:
Compiler Reference Book. The compiler is implemented in Java for a language
called “Tiger”)
[Berk 2003] Berk , Elliot.JLex: A Lexical Analyzer
Generator for Java(TM), http://www.cs.princeton.edu/~appel/modern/java/JLex/,
2003.
(Summary:
The JLex utility is based upon the Lex lexical analyzer generator model. JLex
takes a specification file similar to that accepted by Lex,
then creates a Java source file for the corresponding
lexical analyzer.)