An LR(1) parser with a pythonic interface

Lrparsing is yet another parser for Python. The things that make lrparsing different is it combines a LR(1) parser with an easy to use grammar written using Python expressions, a tokeniser, and comes with extensive (and free!) documentation.


There is a documentation page, some examples, a talk covering parsing concepts, a change log and a README.txt.

Coding Standards conforms to PEP8 and has 100% test coverage.

Copyright and License

Lrparsing is copyright © 2013,2014,2015,2016,2017 Russell Stuart. It is licensed under the GNU Affero General Public License.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

The copyright holders grant you an additional permission under Section 7 of the GNU Affero General Public License, version 3, exempting you from the requirement in Section 6 of the GNU General Public License, version 3, to accompany Corresponding Source with Installation Information for the Program or any work based on the Program. You are still required to comply with all other Section 6 requirements to provide Corresponding Source.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

Downloading, Feedback & Contributing

Development for lrparsing is hosted on Source forge:


Russell Stuart, 2014-05-29