2002 · 156 citations · 18 references
ComputingComputer ScienceCompilersProgramming LanguagesSoftware EngineeringAbstract InterpretationAbstract Syntax TreesControl-flow AnalysisData-flow AnalysisIntermediate RepresentationAbstract SemanticsConstant PropagationPartial EvaluationProgram TransformationSource Code TransformationSource-to-source TranslationTrace SemanticsTransformational Semantics
We introduce a general uniform language-independent framework for designing online and offline source-to-source program transformations by abstract interpretation of program semantics. Iterative source-to-source program transformations are designed constructively by composition of source-to-semantics, semantics-to-transformed semantics and semantics-to-source abstractions applied to fixpoint trace semantics. The correctness of the transformations is expressed through observational and performance abstractions. The framework is illustrated on three examples: constant propagation, program specialization by online and offline partial evaluation and static program monitoring.
18
Patrick Cousot, Radhia Cousot · 1977 · 6.2K citations
Mark Weiser · IEEE Transactions on Software Engineering · 1984 · 3.2K citations
Systematic design of program analysis frameworks
Patrick Cousot, Radhia Cousot · 1979 · 1.6K citations · Full text
Fred B. Schneider · ACM Transactions on Information and System Security · 2000 · 1.3K citations · Full text
A unified approach to global program optimization
Gary A. Kildall · 1973 · 901 citations