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 GenerateEqualTraversal... Expanding GenerateEdgeTraversal... Expanding IsDemeterClassTraversal... Expanding IsAlternationClassTraversal... Expanding GetCDNameTraversal... Expanding GetPNameTraversal... Expanding GetPCNameTraversal... Expanding GetCSNameTraversal... 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 /After.java gen/AfterCallGenerator.java gen/AllBackwardMarker.java gen/Alternati onClass.java gen/AnyClass.java gen/AnyPart.java gen/BackwardMarker.java gen/Back wardMarkerCarrier.java gen/Before.java gen/BeforeCallGenerator.java gen/Behavior .java gen/BehaviorAttacher.java gen/BehaviorCodeGenerator.java gen/BehaviorColle ctor.java gen/BypassingDirective.java gen/ClassBehavior.java gen/ClassBehavior_D List.java gen/ClassDef.java gen/ClassDefAdder.java gen/ClassDefCollector.java ge n/ClassDefCounter.java gen/ClassDefVisitor.java gen/ClassDef_DList.java gen/Clas sGlob.java gen/ClassGlobSet.java gen/ClassGlobSpec.java gen/ClassGlobVisitor.jav a gen/ClassGlob_Commalist.java gen/ClassGraph.java gen/ClassGraphVisitor.java ge n/ClassMethods.java gen/ClassName.java gen/ClassNameAccessor.java gen/ClassNameE xact.java gen/ClassNameExpander.java gen/ClassNameFinder.java gen/ClassNameGette r.java gen/ClassNameGlob.java gen/ClassNameMatcher.java gen/ClassNameSetter.java gen/ClassName_Commalist.java gen/ClassParents.java gen/ClassParts.java gen/Clas sSpec.java gen/ClassSpecFinder.java gen/ClassSpecVisitor.java gen/ClassSpec_Comm alist.java gen/ClassSpec_Sandwich.java gen/ClassesSetter.java gen/CodeGenerator. java gen/Common.java gen/ConstOrAltClass.java gen/ConstructionClass.java gen/Con structorArgsGenerator.java gen/ConstructorInitsGenerator.java gen/ConstructorSup erInitGenerator.java gen/DeclVisitor.java gen/DestGlob.java gen/DirName.java gen /EdgeGlob.java gen/EdgeVisitor.java gen/ForwardMarker.java gen/GenerateEdgeVisit or.java gen/GenerateEqualVisitor.java gen/GetCDNameVisitor.java gen/GetCSNameVis itor.java gen/GetPCNameVisitor.java gen/GetPNameVisitor.java gen/Glob.java gen/G lobMatcher.java gen/GlobSet.java gen/GlobSpec.java gen/Glob_Commalist.java gen/G lobalBehaviorAttacher.java gen/HostSpec.java gen/Interface.java gen/Interface_Co mmalist.java gen/IsAlternationClassVisitor.java gen/IsDemeterClassVisitor.java g en/JavaCode.java gen/KeywordPrinter.java gen/Main.java gen/Method.java gen/Metho dAdder.java gen/MethodName.java gen/Method_SList.java gen/NameConcatenator.java gen/NonParamDefCollector.java gen/Nonempty_ClassBehavior_DList.java gen/Nonempty _ClassDef_DList.java gen/Nonempty_ClassGlob_Commalist.java gen/Nonempty_ClassNam e_Commalist.java gen/Nonempty_ClassSpec_Commalist.java gen/Nonempty_Glob_Commali st.java gen/Nonempty_Interface_Commalist.java gen/Nonempty_Method_SList.java gen /Nonempty_Package.java gen/Nonempty_PartOrSyntax_List.java gen/Nonempty_Part_Com malist.java gen/Nonempty_PlainSyntax_List.java gen/Nonempty_Subclass_Barlist.jav a gen/Nonempty_Syntax_List.java gen/Nonempty_Visitor_Commalist.java gen/OneClass Glob.java gen/OneGlob.java gen/OptionalPart.java gen/Package.java gen/PackagePri nter.java gen/ParamClassName.java gen/ParamExpander.java gen/ParamListGetter.jav a gen/ParamReplacer.java gen/Parameterized.java gen/ParentPrinter.java gen/Paren tSetter.java gen/ParentsVisitor.java gen/ParseCodeGenerator.java gen/ParseError. java gen/Parser.java gen/ParserConstants.java gen/ParserTokenManager.java gen/Pa rt.java gen/PartCollector.java gen/PartGlob.java gen/PartName.java gen/PartNameE xact.java gen/PartNameGlob.java gen/PartNameSetter.java gen/PartOrSyntax.java ge n/PartOrSyntaxAdder.java gen/PartOrSyntax_List.java gen/PartPrinter.java gen/Par tVisitor.java gen/Part_Commalist.java gen/Part_Sandwich.java gen/PathDirective.j ava gen/PlainSyntax.java gen/PlainSyntax_List.java gen/PrintCommand.java gen/Pri ntIndent.java gen/PrintSkip.java gen/PrintSpace.java gen/PrintUnindent.java gen/ Program.java gen/ProgramBehavior.java gen/RHSVisitor.java gen/RepeatedPart.java gen/RepeatedPart_Sandwich.java gen/RepetitionClass.java gen/RepetitionConverter. java gen/RepetitionNodesCompleter.java gen/RuleVisitor.java gen/SCC.java gen/SCC checker.java gen/SCCstate.java gen/SimplePrinter.java gen/SourceGlob.java gen/Su bclass.java gen/SubclassBacklinker.java gen/SubclassGlob.java gen/Subclass_Barli st.java gen/SubgraphMarker.java gen/Superclass.java gen/SuperclassGlob.java gen/ SuperclassNameGetter.java gen/Syntax.java gen/SyntaxTable.java gen/Syntax_List.j ava gen/TargetDirective.java gen/ThroughDirective.java gen/To.java gen/ToStop.ja va gen/Token.java gen/Traversal.java gen/TraversalExpander.java gen/TraversalInf o.java gen/TraversalMethodGenerator.java gen/TraversalMethodInfo.java gen/Traver salName.java gen/TraversalParms.java gen/Verbatim.java gen/Visitor.java gen/Visi torName.java gen/VisitorNameCollector.java gen/VisitorNameVisitor.java gen/Visit or_Commalist.java gen/Visitor_CommalistReverser.java gen/Wrapper.java gen/Wrappe rCallGenerator.java gen/WrapperChecker.java gen/WrapperClassChecker.java gen/Wra pperCodeGenerator.java make: *** No rule to make target `program.input', needed by `test'. Stop.