|
MiniJava is a subset of Java. The meaning of a MiniJava program is
given by its meaning as a Java program. Overloading is not allowed
in MiniJava. The MiniJava statement System.out.println( ... ); can
only print integers. The MiniJava expression e.length only applies to
expressions of type int [].
The MiniJava project was first used as the course project by
Professor Jens Palsberg
in CS352 Compilers: Principles and Practice Fall 2000. The Version 1
link on the left links to this version of the project.
Version 2 is an improvement on the first version.
- The "&" in MiniJava was chaged to "&&"
- The call in all the
intermediate languages in version1 was an indirect call which
confused some students. This is changed now.
- We redesigned Kanga
which makes the final translation to assembly a lot easier.
The Book version is the version that will appear in
Professor Andrew Appel's
book Modern Compiler Implementation in Java, Second Edition
|