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 all_things... Expanding print_allapples... Expanding sum_Apples... Expanding all_baskets... Expanding find_Weight... 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. CLASSPATH=./gen:$CLASSPATH javac -d ./gen gen/ASCII_UCodeESC_CharStream.java gen/Apple.java gen/Basket.java gen/Fruit.java gen/GetWeightVisitor.java gen/Main.java gen/Nonempty_SeveralThings.java gen/Orange.java gen/ParseError.java gen/Parser.java gen/ParserConstants.java gen/ParserTokenManager.java gen/PrintingVisitor.java gen/SeveralThings.java gen/SummingVisitor.java gen/Thing.java gen/Token.java gen/TraverseBasketVisitor.java gen/TraverseThingVisitor.java gen/Weight.java CLASSPATH=./gen:$CLASSPATH java Main < program.input Total Weight of Apples = 10 Expected = 10 SUCCESS