2004 · 34 citations · 16 references
ComputingComputer ScienceCompilersNatural Language ProcessingProgramming LanguagesAnnotationParsingSyntactic AnalysisSyntactic ParsingSyntax AnalysisSyntax ParsingAbstract Syntax Tree AnnotationAbstract Syntax Tree RewritingBottom-up Rewrite SystemsParse Tree AnnotationParse TreesRewrite SystemsSoftware Reverse EngineeringSyntactic Parse Trees
We characterise a computational model for processing annotated parse trees. The model is basically rewriting-based with specific provisions for dealing with annotations along the ordinary rewrite steps. Most notably, there are progression methods, which define a default for annotating the results of rewriting. There are also access methods, which can be used in the rewrite rules in order to retrieve annotations from the input and to establish annotations in the output. Our approach extends the basic rewriting paradigm with support for the separation of concerns that involve annotations. This is motivated in the context of transformations for software re-engineering where annotations can be used to implement concerns such as layout preservation and reversible preprocessing.
16
Semantics of context-free languages
Donald E. Knuth · Theory of Computing Systems · 1968 · 2K citations
Views: a way for pattern matching to cohabit with data abstraction
Philip Wadler · 1987 · 320 citations
Computing, Computer Science, Design +17
Mark van den Brand, H. A. de Jong, Paul Klint et al. · Software Practice and Experience · 2000 · 196 citations · Full text
Modularity and reusability in attribute grammars
Uwe Kastens, William M. Waite · Acta Informatica · 1994 · 117 citations
Arie van Deursen, Paul Klint, Frank Tip · Journal of Symbolic Computation · 1993 · 99 citations