ProgramAnalysis is the (automated) inspection of a program to infer some property. Program analysis is needed for most kinds of ProgramTransformation and can range from simple local properties in PatternMatching to more complicated global properties in DeadCodeElimination. Tools for program analysis * BANE Analysis paradigms * TypeBasedAnalysis ---- I came acrosss an article by Tom Reps called "Program Analysis via Graph Reachability", _Information and Software Technology_ 40(1998):701-726, available from http://www.cs.wisc.edu/~reps/ Its first paragraph nicely summarizes program analysis: * The purpose of program analysis is to ascertain information about a program without actually running the program. For example, in classical dataflow analysis of imperative programs, the goal is to associate an appropriate set of "dataflow facts" with each program point (i.e., with each assignment statement, call statement, I/O statement, predicate of a loop or conditional statement, etc.). Typically, the dataflow facts associated with a program point _p_ describe some aspect of the execution state that holds when control reaches _p_, such as available expressions, live variables, reaching definitions, etc. Information obtained from program analysis is used in ProgramOptimization, as well as in tools for software engineering and ReEngineering. --ArieVanDeursen ---- CategoryAnalysis | Contributions by Main.EelcoVisser, ArieVanDeursen