horizontal - grammarware/slps GitHub Wiki
Turn a definition based on multiple productions into a top choice-based one.
The action is a reverse of vertical.
horizontal:
nonterminal::nonterminal
If some or all of the original production rules are labelled:
[onedec] decs:
dec
[moredecs] decs:
dec decs
then, after using this transformation:
horizontal(decs);
each label is converted to a selector in a corresponding place:
decs:
onedec::dec
moredecs::(dec decs)
- Horizontal is a part of XBGF