CS 6235 - Analysis of Parallel Programs

Java Subsets

TACoJava
grammar tacojava.jj
TACOJAVA SPECIFICATION
TACoJava is a subset of Java. The meaning of a TACoJava program is given by its meaning as a Java program. Overloading is not allowed in TACoJava. The TACoJava statement System.out.println( ... ); can only print integers. The TACoJava expression e1 & e2 is of type boolean, and both e1 and e2 must be of type boolean. TACoJava does not allow clashing of method names, variable names and class names.

QTACoJava

grammar qtacojava.jj
QTACOJAVA SPECIFICATION
QTACoJava is a subset of Java. The meaning of a TACoJava program is given by its meaning as a Java program. Overloading is not allowed in QTACoJava. The QTACoJava statement System.out.println( ... ); can only print integers. The QTACoJava expression e1 & e2 is of type boolean, and both e1 and e2 must be of type boolean. QTACoJava does not allow clashing of method names, variable names and class names.

QParJava

grammar qparjava.jj
QPARJAVA SPECIFICATION
QParJava is a subset of Java. The meaning of a QParJava program is given by its meaning as a Java program. Overloading and Overriding are not allowed in QParJava. The QPARJava statement System.out.println( ... ); can only print integers. The QPARJava expression e1 && e2 is of type boolean, and both e1 and e2 must be of type boolean. QParJava does not allow clashing of method names, variable names and class names. In QParJava two variables with the same name are considered aliases.