๐ฎ
๐ฎ
The Ethereal
A Semantic Framework for PEGs
November 09, 2020 ยท The Ethereal ยท ๐ Software Language Engineering
"No code URL or promise found in abstract"
Evidence collected by the PWNC Scanner
Authors
Sรฉrgio Medeiros, Carlos Olarte
arXiv ID
2011.04360
Category
cs.FL: Formal Languages
Cross-listed
cs.PL
Citations
2
Venue
Software Language Engineering
Last Checked
2 months ago
Abstract
Parsing Expression Grammars (PEGs) are a recognition-based formalism which allows to describe the syntactical and the lexical elements of a language. The main difference between Context-Free Grammars (CFGs) and PEGs relies on the interpretation of the choice operator: while the CFGs' unordered choice e | e' is interpreted as the union of the languages recognized by e and e, the PEGs' prioritized choice e/e' discards e' if e succeeds. Such subtle, but important difference, changes the language recognized and yields more efficient parsing algorithms. This paper proposes a rewriting logic semantics for PEGs. We start with a rewrite theory giving meaning to the usual constructs in PEGs. Later, we show that cuts, a mechanism for controlling backtracks in PEGs, finds also a natural representation in our framework. We generalize such mechanism, allowing for both local and global cuts with a precise, unified and formal semantics. Hence, our work strives at better understanding and controlling backtracks in parsers for PEGs. The semantics we propose is executable and, besides being a parser with modest efficiency, it can be used as a playground to test different optimization ideas. More importantly, it is a mathematical tool that can be used for different analyses.
Community Contributions
Found the code? Know the venue? Think something is wrong? Let us know!
๐ Similar Papers
In the same crypt โ Formal Languages
๐ฎ
๐ฎ
The Ethereal
Supervisor Synthesis to Thwart Cyber Attack with Bounded Sensor Reading Alterations
๐ฎ
๐ฎ
The Ethereal
An Abstraction-Based Framework for Neural Network Verification
๐ฎ
๐ฎ
The Ethereal
Recurrent Neural Networks as Weighted Language Recognizers
๐ฎ
๐ฎ
The Ethereal
TeSSLa: Temporal Stream-based Specification Language
๐ฎ
๐ฎ
The Ethereal