Another Python example
Again, from the reference manual:
dict_display ::= "{" [ key_datum_list ] "}"
key_datum_list ::= key_datum ( "," key_datum )* [","]
key_datum ::= expression ":" expression
In PGE, this becomes:
rule dict_display { '{' <key_datum_list>? '}' }
rule key_datum_list { <key_datum> [ ',' <key_datum> ]* ','? }
rule key_datum { <expression> ':' <expression> }