@inproceedings{85c9a4cab0e8418887e2067e00a04540,
title = "Respect your parents: how attribution and rewriting can get along",
abstract = "Attribute grammars describe how to decorate static trees. Rewriting systems describe how to transform trees into new trees. Attribution is undermined by rewriting because a node may appear in both the source and product of a transformation. If an attribute of that node depends on the node{\textquoteright}s context, then a previously computed value may not be valid. We explore this problem and formalise it as a question of ancestry: the context of a node is given by the tree{\textquoteright}s parent relationships and we must use the appropriate parents to calculate attributes that depend on the context. We show how respecting parents naturally leads to a view of context-dependent attributes as tree-indexed attribute families. Viewed in this way, attribution co-exists easily with rewriting transformations. We demonstrate the practicality of our approach by describing our implementation in the Kiama language processing library.",
author = "Sloane, {Anthony M.} and Matthew Roberts and Hamey, {Leonard G. C.}",
year = "2014",
doi = "10.1007/978-3-319-11245-9_11",
language = "English",
isbn = "9783319112442",
series = " Lecture Notes in Computer Science",
publisher = "Springer, Springer Nature",
pages = "191--210",
editor = "Beno{\^i}t Combemale and Pearce, {David J.} and Olivier Barais and Vinju, {Jurgen J.}",
booktitle = "Software language engineering",
address = "United States",
note = "International conference on software language engineering (7th : 2014) ; Conference date: 15-09-2014 Through 16-09-2014",
}