//import static main.DateStructures.*; sclass EnglishDateParser > DateStructures { bool assumeFuture = true; // e.g. for "tuesday" void init { } SomeDate parse(S s) null { init(); new ProbabilisticParser1 parser; ProbabilisticParser1.Action number = new parser.Any() { double calcProbabilityForMatchedText(S s) { ret isInteger(s) ? 100 : 50; } }; BasicLogicRule rule = parser.ruleFromActions( number, parser.new ConsumeToken("/"), number, parser.new ConsumeToken("/"), number ); pm.parse(rule, s); print(parser.bestState()); } }