Standard

MAF: A Framework for Modular Static Analysis of Higher-Order Languages. / Van Es, Noah; Van der Plas, Jens; Stiévenart, Quentin; De Roover, Coen.

Proceedings of the 20th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2020). IEEE, 2020. p. 37-42.

Research output: Chapter in Book/Report/Conference proceedingConference paper

Harvard

Van Es, N, Van der Plas, J, Stiévenart, Q & De Roover, C 2020, MAF: A Framework for Modular Static Analysis of Higher-Order Languages. in Proceedings of the 20th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2020). IEEE, pp. 37-42, 20th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM2020), Adelaide, Australia, 27/09/20.

APA

Van Es, N., Van der Plas, J., Stiévenart, Q., & De Roover, C. (2020). MAF: A Framework for Modular Static Analysis of Higher-Order Languages. In Proceedings of the 20th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2020) (pp. 37-42). IEEE.

Vancouver

Van Es N, Van der Plas J, Stiévenart Q, De Roover C. MAF: A Framework for Modular Static Analysis of Higher-Order Languages. In Proceedings of the 20th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2020). IEEE. 2020. p. 37-42

Author

Van Es, Noah ; Van der Plas, Jens ; Stiévenart, Quentin ; De Roover, Coen. / MAF: A Framework for Modular Static Analysis of Higher-Order Languages. Proceedings of the 20th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2020). IEEE, 2020. pp. 37-42

BibTeX

@inproceedings{1c4a6453e0b14acea692c225b33b6580,
title = "MAF: A Framework for Modular Static Analysis of Higher-Order Languages",
abstract = "A modular static analysis decomposes a program's analysis into analyses of its parts, or components. An inter-component analysis instructs an intra-component analysis to analyse each component independently of the others. Additional analyses are scheduled for newly discovered components, and for dependent components that need to account for newly discovered component information. Modular static analyses are scalable, can be tuned to a high precision, and support the analysis of programs that are highly dynamic, featuring e.g., higher-order functions or dynamically allocated processes.In this paper, we present the engineering aspects of MAF, a static analysis framework for implementing modular analyses for higher-order languages. For any such modular analysis, the framework provides a reusable inter-component analysis and it suffices to implement its intra-component analysis. The intra-component analysis can be composed from several interdependent and reusable Scala traits. This design facilitates changing the analysed language, as well as the analysis precision with minimal effort. We illustrate the use of MAF through its instantiation for several different analyses of Scheme programs.",
author = "{Van Es}, Noah and {Van der Plas}, Jens and Quentin Sti{\'e}venart and {De Roover}, Coen",
year = "2020",
month = "9",
day = "27",
language = "English",
isbn = "978-1-7281-9248-2",
pages = "37--42",
booktitle = "Proceedings of the 20th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2020)",
publisher = "IEEE",

}

RIS

TY - GEN

T1 - MAF: A Framework for Modular Static Analysis of Higher-Order Languages

AU - Van Es, Noah

AU - Van der Plas, Jens

AU - Stiévenart, Quentin

AU - De Roover, Coen

PY - 2020/9/27

Y1 - 2020/9/27

N2 - A modular static analysis decomposes a program's analysis into analyses of its parts, or components. An inter-component analysis instructs an intra-component analysis to analyse each component independently of the others. Additional analyses are scheduled for newly discovered components, and for dependent components that need to account for newly discovered component information. Modular static analyses are scalable, can be tuned to a high precision, and support the analysis of programs that are highly dynamic, featuring e.g., higher-order functions or dynamically allocated processes.In this paper, we present the engineering aspects of MAF, a static analysis framework for implementing modular analyses for higher-order languages. For any such modular analysis, the framework provides a reusable inter-component analysis and it suffices to implement its intra-component analysis. The intra-component analysis can be composed from several interdependent and reusable Scala traits. This design facilitates changing the analysed language, as well as the analysis precision with minimal effort. We illustrate the use of MAF through its instantiation for several different analyses of Scheme programs.

AB - A modular static analysis decomposes a program's analysis into analyses of its parts, or components. An inter-component analysis instructs an intra-component analysis to analyse each component independently of the others. Additional analyses are scheduled for newly discovered components, and for dependent components that need to account for newly discovered component information. Modular static analyses are scalable, can be tuned to a high precision, and support the analysis of programs that are highly dynamic, featuring e.g., higher-order functions or dynamically allocated processes.In this paper, we present the engineering aspects of MAF, a static analysis framework for implementing modular analyses for higher-order languages. For any such modular analysis, the framework provides a reusable inter-component analysis and it suffices to implement its intra-component analysis. The intra-component analysis can be composed from several interdependent and reusable Scala traits. This design facilitates changing the analysed language, as well as the analysis precision with minimal effort. We illustrate the use of MAF through its instantiation for several different analyses of Scheme programs.

M3 - Conference paper

SN - 978-1-7281-9248-2

SP - 37

EP - 42

BT - Proceedings of the 20th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2020)

PB - IEEE

ER -

ID: 53858429