Automated selective caching for reference attribute grammars
Reference attribute grammars (RAGs) can be used to express semantics as super-imposed graphs on top of abstract syntax trees (ASTs). A RAG-based AST can be used as the in-memory model providing semantic information for software language tools such as compilers, refactoring tools, and meta- modeling tools. RAG performance is based on dynamic attribute evaluation with caching. Caching all attributes