A Task-driven Grammar Refactoring Algorithm
Typ dokumentu
articlePeer-reviewed
publishedVersion
Autor
Halupka , Ivan
Kollár , Ján
Pietriková , Emília
Práva
Creative Commons Attribution 4.0 International Licensehttp://creativecommons.org/licenses/by/4.0/
openAccess
Metadata
Zobrazit celý záznamAbstrakt
This paper presents our proposal and the implementation of an algorithm for automated refactoring of context-free grammars. Rather than operating under some domain-specific task, in our approach refactoring is perfomed on the basis of a refactoring task defined by its user. The algorithm and the corresponding refactoring system are called mARTINICA. mARTINICA is able to refactor grammars of arbitrary size and structural complexity. However, the computation time needed to perform a refactoring task with the desired outcome is highly dependent on the size of the grammar. Until now, we have successfully performed refactoring tasks on small and medium-size grammars of Pascal-like languages and parts of the Algol-60 programming language grammar. This paper also briefly introduces the reader to processes occurring in grammar refactoring, a method for describing desired properties that a refactored grammar should fulfill, and there is a discussion of the overall significance of grammar refactoring.
Kolekce
K tomuto záznamu jsou přiřazeny následující licenční soubory:
Kromě případů, kde je uvedeno jinak, licence tohoto záznamu je Creative Commons Attribution 4.0 International License