DMS Software Reengineering Toolkit: Difference between revisions

Content deleted Content added
remove PROD - no reason given, also previously at AFD, needs to go back there
linking
Line 37:
DMS provides [[attribute grammar]] evaluators for computing custom analyses over ASTs, such as metrics, and including special support for [[symbol table]] construction. Other program facts can be extracted by built-in control- and data- [[flow analysis]] engines, local and global [[pointer analysis]], whole-program [[call graph]] extraction, and symbolic range analysis by [[abstract interpretation]].
 
Changes to ASTs can be accomplished by both procedural methods coded in PARLANSE and source-to-source tree transformations coded as [[rewrite rulesrule]]s using surface-syntax conditioned by any extracted program facts, using DMS's Rule Specification Language (RSL). The rewrite rule engine supporting RSL handles associative and commutative rules. A rewrite rule for C to replace a complex condition by the '''?:''' operator be written as:
 
rule simplify_conditional_assignment(v:left_hand_side,e1:expression,e2:expression,e3:expression)