TY - JOUR
T1 - Systematic design of program transformation frameworks by abstract interpretation
AU - Cousot, Patrick
AU - Cousot, Radhia
N1 - Copyright:
Copyright 2020 Elsevier B.V., All rights reserved.
PY - 2002
Y1 - 2002
N2 - 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.
AB - 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.
UR - http://www.scopus.com/inward/record.url?scp=0036036551&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=0036036551&partnerID=8YFLogxK
U2 - 10.1145/503272.503290
DO - 10.1145/503272.503290
M3 - Conference article
AN - SCOPUS:0036036551
SN - 0730-8566
SP - 178
EP - 190
JO - Conference Record of the Annual ACM Symposium on Principles of Programming Languages
JF - Conference Record of the Annual ACM Symposium on Principles of Programming Languages
T2 - POPL 2002: 29th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Y2 - 16 January 2002 through 18 January 2002
ER -