Currently existing syntactic definitions employ many different notations (usually dialects of EBNF) with slight deviations among them, which prevent efficient automated processing. When changes in such notation are required either due to maintenance activities such as correction or evolution, or because a grammar collection is written in a different notation than the one required by the grammarware toolkit, we speak of metalanguage evolution: i.e., a special language evolution scenario when the language itself does not necessarily evolve, but the notation in which it is written, does. Notational changes need to be propagated to different levels, such as to parsers that used to work with the old notation, to grammars of those notations that served as explanation material, and to the existing grammarbase. The solution proposed in this paper, relies on composing a notation specification and expressing notation changes as transformations of that specification. These transformation steps are coupled to changes in the notation grammar (i.e., grammar for grammars) and to changes in other grammars written in the original notation. This paper explains the general setup of such an infrastructure, with links to the prototypical implementation of the solution.
Additional Metadata
Keywords language evolution, bidirectional transformation, coupled transformation, syntactic notation, grammar convergence
ACM Grammars and Other Rewriting Systems (acm F.4.2), Formal Languages (acm F.4.3)
THEME Software (theme 1)
Publisher European Association of Software Science and Technology
Journal Electronic Communications of the European Association of Software Science and Technology
Project GrammarLab: Foundations of a Grammar Laboratory
Conference International Workshop on Bidirectional Transformation
Grant This work was funded by the The Netherlands Organisation for Scientific Research (NWO); grant id nwo/612.001.007 - GrammarLab: Foundations of a Grammar Laboratory
Citation
Zaytsev, V. (2012). Language Evolution, Metasyntactically. Electronic Communications of the European Association of Software Science and Technology, 49, 1–17.