We present a modular well-definedness analysis for attribute grammars. The global properties of completeness and non-circularity are ensured with checks on grammar modules that require only additional information from their dependencies. Local checks to ensure global properties are crucial for specifying extensible languages. They allow independent developers of language extensions to verify that their extension, when combined with other independently developed and similarly verified extensions to a specified host language, will result in a composed grammar that is well-defined. Thus, the composition of the host language and user-selected extensions can safely be performed by someone with no expertise in language design and implementation. The analysis is necessarily conservative and imposes some restrictions on the grammar. We argue that the analysis is practical and the restrictions are natural and not burdensome by applying it to the Silver specifications of Silver, our boot-strapped extensible attribute grammar system.
|Original language||English (US)|
|Title of host publication||Software Language Engineering - 5th International Conference, SLE 2012, Revised Selected Papers|
|Number of pages||20|
|State||Published - 2013|
|Event||5th International Conference on Software Language Engineering, SLE 2012 - Dresden, Germany|
Duration: Sep 26 2012 → Sep 28 2012
|Name||Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)|
|Other||5th International Conference on Software Language Engineering, SLE 2012|
|Period||9/26/12 → 9/28/12|
Bibliographical noteFunding Information:
This work is partially supported by NSF Awards No. 0905581 and 1047961.