While attribute grammars have several features making them advantageous for specifying language processing tools, functional programming languages offer a myriad of features also well-suited for such tasks. Much other work shows the close relationship between these two approaches, often in the form of embedding attribute grammars into lazy functional languages. This paper continues in this tradition, but in the other direction, by integrating various functional language features into attribute grammars. Specifically we integrate rich static types (including parametric polymorphism, typed distinctions between decorated and undecorated trees, limited type inference, and generalized algebraic data-types) and pattern-matching, all in a manner that maintains familiar and convenient attribute grammar notations and especially their highly extensible nature.
|Original language||English (US)|
|Title of host publication||Software Language Engineering - 4th International Conference, SLE 2011, Revised Selected Papers|
|Number of pages||20|
|State||Published - 2012|
|Event||4th International Conference of Software Language Engineering, SLE 2011 - Braga, Portugal|
Duration: Jul 3 2011 → Jul 4 2011
|Name||Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)|
|Other||4th International Conference of Software Language Engineering, SLE 2011|
|Period||7/3/11 → 7/4/11|
Bibliographical noteFunding Information:
This work is partially supported by NSF Awards No. 0905581 and 1047961.