parser code {: SimpleLex lexer; public static void main ( String[] args) throws Exception { @SuppressWarnings("deprecation") parser p=new parser(); p.lexer=new NatLex(); p.lexer.init(args); p.parse(); p.ECHO("Parsing OK"); } public void ECHO(String m) { System.out.println(m); } :} scan with {: return new java_cup.runtime.Symbol(lexer.next_token()); :}; terminal MOT, POINT, ARTICLE, VERBE, NOM_C, NOM_P; nonterminal texte, phrase, groupeNom; texte ::= /* vide */ | texte phrase {: ECHO("Phrase"); :} | texte error {: ECHO("Pas phrase"); :} ; phrase ::= groupeNom VERBE groupeNom POINT ; groupeNom ::= NOM_P {: ECHO("Nom_P"); :} | ARTICLE NOM_C {: ECHO("Article + Nom_C"); :} ;