Ambiguous Context Free Grammars (CFGs) are problematic for programming languages, as they allow inputs to be parsed in more than one way. In this paper, we introduce a simple non-deterministic search-based approach to ambiguity detection which non-exhaustively explores a grammar in breadth for ambiguity. We also introduce two new techniques for generating random grammars - Boltzmann sampling and grammar mutation - allowing us to test ambiguity detection tools on much larger corpuses than previously possible. Our experiments show that our breadth-based approach to ambiguity detection performs as well as, and generally better, than extant tools. © 2013 Springer International Publishing.
CITATION STYLE
Vasudevan, N., & Tratt, L. (2013). Detecting ambiguity in programming language grammars. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 8225 LNCS, pp. 157–176). https://doi.org/10.1007/978-3-319-02654-1_9
Mendeley helps you to discover research relevant for your work.