if I understood your specification correctly, there would be multiple
ways to parse the string "AAA":
- 3 'x' elements ("A", "A", "A")
- 2 'x' elements ("AA", "A")
- 2 'x' elements again (first one shorter) ("A", "AA")
- 1 'x' element ("AAA")
Which of these four should we choose?Maybe "parse as many As as possible
without consuming the A followed by a series of B"?