{"title":"Grammar Normalization to Support Automated Merging","authors":"Rosetta Roberts, Isaac Griffith","doi":"10.1109/IETC47856.2020.9249122","DOIUrl":null,"url":null,"abstract":"Introduction: Current solutions to multilingual parsing, for programming languages, are flawed. Current implementations are either limited in scope or difficult to develop and maintain. The development of multilingual parsers requires the combination of multiple base grammars, leading to a maintenance headache as these grammars evolve. Such a repetitive process should be automated. Objective: Develop an approach to normalize a grammar in such a way that the grammar is equivalent to the original, but in a state which reduces the effort to merge grammars by reducing ambiguity in automated merge decision making. Methods: This normalization procedure transforms grammars such that each production is one of two forms. Additionally, the normalized grammars maintain a set of additional constraints we identified as useful. A pilot study demonstrating this approach was conducted on three existing grammars. Results: The normalization algorithm was shown to correctly normalize the three grammars. Conclusions: This work presents a normalization method towards easing the development of automatically merging programming language grammars.","PeriodicalId":186446,"journal":{"name":"2020 Intermountain Engineering, Technology and Computing (IETC)","volume":"50 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-10-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2020 Intermountain Engineering, Technology and Computing (IETC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IETC47856.2020.9249122","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Introduction: Current solutions to multilingual parsing, for programming languages, are flawed. Current implementations are either limited in scope or difficult to develop and maintain. The development of multilingual parsers requires the combination of multiple base grammars, leading to a maintenance headache as these grammars evolve. Such a repetitive process should be automated. Objective: Develop an approach to normalize a grammar in such a way that the grammar is equivalent to the original, but in a state which reduces the effort to merge grammars by reducing ambiguity in automated merge decision making. Methods: This normalization procedure transforms grammars such that each production is one of two forms. Additionally, the normalized grammars maintain a set of additional constraints we identified as useful. A pilot study demonstrating this approach was conducted on three existing grammars. Results: The normalization algorithm was shown to correctly normalize the three grammars. Conclusions: This work presents a normalization method towards easing the development of automatically merging programming language grammars.