A MiniJava lexer and parser written using Java CUP, Java, and Jflex