en regular-expression
          libraries (such as boost regex) or scanners (such as Boost tokenizer) do
          not scale well when we need to write more elaborate parsers. Attempting
          to write even a moderately-complex parser using these tools leads to code
          that is hard to understand and maintain.
        </p>
<p>
          One prime objective is to make the tool easy to use. When one thinks of
          a parser generator, the usual reaction is "it must be big and complex
          w