Cyclic Operator Precedence Grammars for Parallel Parsing
Michele Chiari (1), Dino Mandrioli (2), Matteo Pradella (2, 3) ((1), TU Wien, (2) Politecnico di Milano, (3) IEIIT Consiglio Nazionale delle, Ricerche)

TL;DR
This paper introduces cyclic operator precedence grammars, expanding the formalism to include cyclic relations, enabling parallel parsing of complex syntax trees with linear substructures, and aligning their expressive power with existing OPL formalisms.
Contribution
It proposes cyclic operator precedence grammars that remove the acyclicity constraint, allowing for parallel parsing of more complex language structures without losing expressive power.
Findings
Enables parallel parsing of syntax trees with linear substructures.
Maintains equivalence with existing OPL formalisms.
Allows for unranked syntax trees with flat substructures.
Abstract
Operator precedence languages (OPL) enjoy the local parsability property, which essentially means that a code fragment enclosed within a pair of markers -- playing the role of parentheses -- can be compiled with no knowledge of its external context. Such a property has been exploited to build parallel compilers for languages formalized as OPLs. It has been observed, however, that when the syntax trees of the sentences have a linear substructure, its parsing must necessarily proceed sequentially making it impossible to split such a subtree into chunks to be processed in parallel. Such an inconvenience is due to the fact that so far much literature on OPLs has assumed the hypothesis that equality precedence relation cannot be cyclic. This hypothesis was motivated by the need to keep the mathematical notation as simple as possible. We present an enriched version of operator precedence…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsNatural Language Processing Techniques · Model-Driven Software Engineering Techniques · Logic, programming, and type systems
