Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Demonstration Parser for DPC12 talk "Let's build a Parser!"
Branch: master
Failed to load latest commit information.
bin Helpers to convert source to highlighted RTF files in tree and remove…
src/QueryLang Use a TokenStream object instead of embedding the tokens in the lexer
tests Remove optimization to a separate Optimizer (much cleaner!)
.gitignore Ignore RTF files and don't ignore bin/
composer.json Added autoloading
phpunit.xml.dist More work

QueryLang - A Parser for a Querying Language in PHP

This is an example parser written for the "Let's build a Parser!" talk at the Dutch PHP Conference of 2012.

Over several versions a Parser for a simplistic Querying language is built up using both predictive recursive descent and PHP-PEG.

To install this projects dependencies you must use PHP5.3+ and Composer, please follow these instructions:

To run the test suite you must have PHPUnit installed, after which you can simply run the phpunit command in the project root.

Something went wrong with that request. Please try again.