Arpeggio is recursive-descent PEG grammar interpreter written in Python. Parser is configured dynamically using grammar definition. Grammar can be defined by using python language constructs or PEG textual notation. It is in early stage of development and the intended usage is in the IDE for DSL development so features like dynamic reconfiguration and error recovery during parsing are essential.
Why is it called arpeggio?In music, arpeggio is playing the chord notes one by one in sequence. I came up with the name by thinking that parsing is very similar to arpeggios in music. You take tokens one by one from an input and make sense out of it – make a chord!
These details are provided for information only. No information here is legal advice and should not be used as such.