[...]
Is there something wrong with my implementation,
or didn't I understand correctly the '/' operator?
I also tried to change the implementation of octalEscape in the following way
(to put the longest match as the first option), but without good results:
<snip>
PPJavaGrammar>>octalEscape
^ $\ asParser , ( (zeroToThree , octalDigit , octalDigit) /
(octalDigit , octalDigit) / octalDigit )
</snip>