Write a Blog >>
SLE 2017
Sun 22 - Fri 27 October 2017 Vancouver, Canada
co-located with SPLASH 2017
Mon 23 Oct 2017 13:53 - 14:15 at Regency B - Textual Models Chair(s): Anthony Sloane

Context-free grammars are suitable for formalizing the syntax of programming languages concisely and declaratively. As a result, such grammars are often found in reference manuals of programming languages, and used in language workbenches for language prototyping. However, the natural and concise way of writing a context-free grammar is often ambiguous.

Safe and complete declarative disambiguation of operator precedence and associativity conflicts guarantees that all ambiguities arising from combining the operators of the language are resolved. Ambiguities can occur due to shallow conflicts, which can be captured by one-level tree patterns, and deep conflicts, which require more elaborate techniques. Approaches to solve deep priority conflicts include grammar transformations, which may result in large unambiguous grammars, or may require adapted parser technologies to include data-dependency tracking at parse time.

In this paper we study deep priority conflicts “in the wild”. We investigate the efficiency of grammar transformations to solve deep priority conflicts by applying lazy parse table generation to the resulting context-free grammars. On top of lazily-generated parse tables, we define metrics, aiming to answer how often deep priority conflicts occur in real-world programs and to what extent programmers explicitly disambiguate programs themselves. By applying our metrics to a small corpus of popular open-source repositories we found that in OCaml, up to 17% of the source files contain deep priority conflicts.

Mon 23 Oct

sle-2017-papers
13:30 - 15:00: SLE - Textual Models at Regency B
Chair(s): Anthony SloaneMacquarie University
sle-2017-papers13:30 - 13:53
Talk
Mats StijlaartUniversiteit van Amsterdam, Vadim ZaytsevRaincode Labs, Belgium
DOI
sle-2017-papers13:53 - 14:15
Talk
Luis Eduardo de Souza AmorimDelft University of Technology, Netherlands, Michael J. SteindorferDelft University of Technology, Eelco VisserDelft University of Technology
DOI
sle-2017-papers14:16 - 14:38
Talk
Robert BillVienna University of Technology, Patrick NeubauerUniversity of York, UK, Manuel WimmerTU Wien
DOI
sle-2017-papers14:38 - 15:00
Talk
Friedrich SteimannFernuniversität, Marcus FrenkelFernuni Hagen, Markus Voelteritemis
DOI