A Parser has an Input Stream, a set of rules (generated from an extended PEG) that recognise input structure and generate output structures, an output stream to collect generated output, and a current result (semantic value from the most recent Expression) that can be read and written within rules.
DOT FROM lambda-browsing