Thanks, Guido, Pablo, Lysandros, that's a great PEP. Also thanks to everyone else working on the PEG parser over the last year, like Emily. I know it's a lot of work but as someone who's intimately aware of the headaches caused by the LL(1) parser, I greatly appreciate it :).

The only thing I'm missing from the PEP is more detail about how the cross-language nature of the parser actions are handled. The example covers just C, and the description of the actions says they're C expressions. The only mention of Python code generation is for alternatives without actions. Is the intent that the actions are cross-language, or translated to Python somehow, or is the support for generating a Python-based parser merely for debugging, as that action suggests?

Thomas Wouters <>

Hi! I'm an email virus! Think twice before sending your email to help me spread!