a simple peg parser in the making