demjava -code -outputdir ./gen program Parsing program.cd... Building hashtable of classes... Expanding parameterized classes... Converting repetition classes... Filling in part names... Setting inheritance links... Parsing program.beh... Gathering methods... Expanding traversals... Expanding allClassDefinitions... Expanding allClasses... Generating Java code to ./gen... Done. demjava -grammar -outputdir ./gen program Parsing program.cd... Building hashtable of classes... Expanding parameterized classes... Converting repetition classes... Filling in part names... Setting inheritance links... Generating grammar to ./gen/program.jack... Done. (cd ./gen; jack program.jack) Jack Version 0.5. Copyright (c) 1996 Sun Microsystems Inc. (type "jack" with no arguments for help) Reading from file program.jack . . . File "ParseError.java" does not exist. Will create one. File "Token.java" does not exist. Will create one. Parser generated successfully. javac -d ./gen gen/ASCII_UCodeESC_CharStream.java gen/Adj.java gen/Adj_list.java gen/Alternat.java gen/Any_vertex.java gen/Any_vertex_list.java gen/Cd_graph.java gen/CheckingVisitor.java gen/ClassNames.java gen/Construct.java gen/Empty.java gen/Empty_cd_graph.java gen/IsDemeterClassVisitor.java gen/Labeled_vertex.java gen/Main.java gen/Nany_vertex_list.java gen/Neighbors.java gen/ParseError.java gen/Parser.java gen/ParserConstants.java gen/ParserTokenManager.java gen/Syntax_vertex.java gen/Token.java gen/Vertex.java CLASSPATH=./gen:$CLASSPATH java Main < program.input first and last class A1 S size of vector 8 target class A1 target class A1 parts 2 terminal parts 0 target class A1 target class A1 parts 2 terminal parts 0 target class X target class Integer parts 2 terminal parts 1 Class violates the Terminal Buffer Rule: A parts 0 terminal parts 0 target class Long parts 1 terminal parts 1 target class Integer target class Integer parts 2 terminal parts 2 Class violates the Terminal Buffer Rule: C target class Vector target class A parts 2 terminal parts 1 Class violates the Terminal Buffer Rule: S