Remote attribute updating for language-based editors

TW Reps, C Marceau, T Teitelbaum - … of the 13th ACM SIGACT-SIGPLAN …, 1986 - dl.acm.org
TW Reps, C Marceau, T Teitelbaum
Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of …, 1986dl.acm.org
A major drawback to the use of attribute grammars in language-based editors has been that
attributes can only depend on neighboring attributes in a program's syntax tree. This paper
concerns new attribute-grammar-based methods that, for a suitable class of grammars,
overcome this fundamental limitation. The techniques presented allow the updating
algorithm to skip over arbitrarily large sections of the tree that more straightforward updating
methods visit node by node. These techniques are then extended to deal with aggregate …
A major drawback to the use of attribute grammars in language-based editors has been that attributes can only depend on neighboring attributes in a program's syntax tree. This paper concerns new attribute-grammar-based methods that, for a suitable class of grammars, overcome this fundamental limitation. The techniques presented allow the updating algorithm to skip over arbitrarily large sections of the tree that more straightforward updating methods visit node by node. These techniques are then extended to deal with aggregate values, so that the attribute updating procedure need only follow dependencies due to a changed component of an aggregate value. Although our methods work only for a restricted class of attribute grammars, satisfying the necessary restrictions should not place an undue burden on the writer of the grammar.
ACM Digital Library