Towards More Sophisticated Static Analysis Methods of Python']Python Programs

被引:0
作者
Gulabovska, Hristina [1 ]
Porkolab, Zoltan [1 ]
机构
[1] Eotvos Lorand Univ, Dept Programming Languages & Compilers, Budapest, Hungary
来源
2019 IEEE 15TH INTERNATIONAL SCIENTIFIC CONFERENCE ON INFORMATICS (INFORMATICS 2019) | 2019年
关键词
static analysis; symbolic execution; !text type='Python']Python[!/text;
D O I
10.1109/informatics47936.2019.9119307
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Static analysis is a software verification method which is analyzing the source code without executing it for detecting code smells and possible software bugs. Various analysis methods have been successfully applied for languages with static type system, such as C, C++ and Java. Python is an important programming language with dynamic type system, used in many emerging areas, including data science, machine learning and web applications. The dynamic behavior of the Python language requires different static analysis approaches compared to the ones with static type system. In this paper we overview these methods and investigate their advantages and shortages. We compare the symbolic execution with the generally used Abstract Syntax Tree based approach and show its advantages based on concrete examples. We also highlight the restrictions of current tools and suggest further research directions to tackle these problems.
引用
收藏
页码:225 / 230
页数:6
相关论文
共 50 条
  • [31] Investigating Static Analysis Errors in Student Java']Java Programs
    Edwards, Stephen H.
    Kandru, Nischel
    Rajagopal, Mukund B. M.
    PROCEEDINGS OF THE 2017 ACM CONFERENCE ON INTERNATIONAL COMPUTING EDUCATION RESEARCH (ICER 17), 2017, : 65 - 73
  • [32] A sound abstract memory model for static analysis of C programs
    Dong, Yukun
    INTERNATIONAL JOURNAL OF COMPUTATIONAL SCIENCE AND ENGINEERING, 2018, 16 (03) : 255 - 264
  • [33] Static Executes-Before Analysis for Event Driven Programs
    Pai, Rekha
    Uppar, Abhishek
    Shenoy, Akshatha
    Kushwaha, Pranshul
    D'Souza, Deepak
    PROCEEDINGS OF THE 30TH ACM JOINT MEETING EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, ESEC/FSE 2022, 2022, : 233 - 244
  • [34] QChecker: Detecting Bugs in Quantum Programs via Static Analysis
    Zhao, Pengzhan
    Wu, Xiongfei
    Li, Zhuo
    Zhao, Jianjun
    2023 IEEE/ACM 4TH INTERNATIONAL WORKSHOP ON QUANTUM SOFTWARE ENGINEERING, Q-SE, 2023, : 50 - 57
  • [35] Towards Multi-Language Static Code Analysis
    Siddiqui, Sanaa
    Metta, Ravindra
    Madhukar, Kumar
    2023 IEEE 34TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING WORKSHOPS, ISSREW, 2023, : 81 - 82
  • [36] Flow-insensitive static analysis for detecting integer anomalies in programs
    Sarkar, Dipanwita
    Jagannathan, Muthu
    Thiagarajan, Jay
    Venkatapathy, Ramanathan
    PROCEEDINGS OF THE IASTED INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, 2007, : 334 - +
  • [37] Static Analysis on Floating-Point Programs Dealing with Division Operations
    Thushara, M. G.
    Somasundaram, K.
    INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS, 2019, 10 (10) : 422 - 425
  • [38] Static Analysis of Multi-Staged Programs via Unstaging Translation
    Choi, Wontae
    Aktemur, Baris
    Yi, Kwangkeun
    Tatsuta, Makoto
    ACM SIGPLAN NOTICES, 2011, 46 (01) : 81 - 92
  • [39] Static Loop Bound Analysis of C Programs Based on Flow Analysis and Abstract Interpretation
    de Michiel, Marianne
    Bonenfant, Armelle
    Casse, Hugues
    Sainrat, Pascal
    RTCSA 2008: 14TH IEEE INTERNATIONAL CONFERENCE ON EMBEDDED AND REAL-TIME COMPUTING SYSTEMS AND APPLICATIONS - PROCEEDINGS, 2008, : 161 - +
  • [40] Static Analysis of Multi-Staged Programs via Unstaging Translation
    Choi, Wontae
    Aktemur, Baris
    Yi, Kwangkeun
    Tatsuta, Makoto
    POPL 11: PROCEEDINGS OF THE 38TH ANNUAL ACM SIGPLAN-SIGACT SYMPOSIUM ON PRINCIPLES OF PROGRAMMING LANGUAGES, 2011, : 81 - 92