DOI: 10.29007/2ndp
|View full text |Cite
|
Sign up to set email alerts
|

Parse Condition: Symbolic Encoding of LL(1) Parsing

Abstract: In this work, we propose the notion of a Parse Condition—a logical condition that is satisfiable if and only if a given string w can be successfully parsed using a grammar G. Further, we propose an algorithm for building an SMT encoding of such parse conditions for LL(1) grammars and demonstrate its utility by building two applications over it: automated repair of syntax errors in Tiger programs and automated parser synthesis to automatically synthesize LL(1) parsers from examples. We implement our ideas into … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1

Citation Types

0
3
0

Publication Types

Select...
3
2
1

Relationship

2
4

Authors

Journals

citations
Cited by 6 publications
(3 citation statements)
references
References 27 publications
0
3
0
Order By: Relevance
“…Program Synthesis. Program synthesis has been successful in many domains: synthesis of heap manipulations [40,21,59], bit-manipulating programs [28], bug synthesis [42], parser synthesis [31,48], regression-free repairs [7,6], synchronization in concurrent programs [58], boolean functions [23,25,24] and even differentially private mechanisms [39]. There has also been an interest in using program synthesis in hardware designs [17].…”
Section: Related Workmentioning
confidence: 99%
“…Program Synthesis. Program synthesis has been successful in many domains: synthesis of heap manipulations [40,21,59], bit-manipulating programs [28], bug synthesis [42], parser synthesis [31,48], regression-free repairs [7,6], synchronization in concurrent programs [58], boolean functions [23,25,24] and even differentially private mechanisms [39]. There has also been an interest in using program synthesis in hardware designs [17].…”
Section: Related Workmentioning
confidence: 99%
“…bug synthesis [40], parser synthesis [30,46], regression-free repairs [6,5], synchronization in concurrent programs [56], boolean functions [22,24,23] and even differentially private mechanisms [38]. There has also been an interest in using program synthesis in hardware designs [16].…”
Section: Related Workmentioning
confidence: 99%
“…al. [24] developed a tool CYCLOPS to address parse conditions related to LL (1) grammar as it is still an intensive work, they mentioned. Their tool CYCLOPS is a combination of two utilities syntax error handling and parser synthesis.…”
Section: Literature Reviewmentioning
confidence: 99%