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 条
  • [21] Static Analysis of Resource Usage Bounds for Imperative Programs
    Chen, Liqian
    Chen, Taoqing
    Fan, Guangsheng
    Yin, Banghu
    2021 28TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2021), 2021, : 580 - 581
  • [22] A generic approach to the static analysis of concurrent programs with procedures
    Bouajjani, A
    Esparza, J
    Touili, T
    ACM SIGPLAN NOTICES, 2003, 38 (01) : 62 - 73
  • [23] Static Analysis of JNI Programs via Binary Decompilation
    Park, Jihee
    Lee, Sungho
    Hong, Jaemin
    Ryu, Sukyoung
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2023, 49 (05) : 3089 - 3105
  • [24] Inferring Effective Types for Static Analysis of C Programs
    Jeannet, Bertrand
    Sotin, Pascal
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2012, 288 : 37 - 47
  • [25] A Static Analysis Framework for Detecting Bugs in Introductory Programs
    Xu, Wenchu
    Ma, Yanran
    2021 IEEE INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING WORKSHOPS (ISSREW 2021), 2021, : 278 - 279
  • [26] Static analysis for concurrent programs with applications to data race detection
    Kahlon V.
    Sankaranarayanan S.
    Gupta A.
    International Journal on Software Tools for Technology Transfer, 2013, 15 (4) : 321 - 336
  • [27] Static Bound Analysis of Dynamically Allocated Resources for C Programs
    Fan, Guangsheng
    Chen, Taoqing
    Yin, Banghu
    Chen, Liqian
    Wang, Tengbin
    Wang, Ji
    2021 IEEE 32ND INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE 2021), 2021, : 390 - 400
  • [28] Comparison of Static Analysis Tools for Quality Measurement of RPG Programs
    Toth, Zoltan
    Vidacs, Laszlo
    Ferenc, Rudolf
    COMPUTATIONAL SCIENCE AND ITS APPLICATIONS - ICCSA 2015, PT V, 2015, 9159 : 177 - 192
  • [29] Model checking of concurrent programs with static analysis of field accesses
    Parizek, Pavel
    Lhotak, Ondrej
    SCIENCE OF COMPUTER PROGRAMMING, 2015, 98 : 735 - 763
  • [30] MIRCHECKER: Detecting Bugs in Rust Programs via Static Analysis
    Li, Zhuohua
    Wang, Jincheng
    Sun, Mingshen
    Lui, John C. S.
    CCS '21: PROCEEDINGS OF THE 2021 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2021, : 2183 - 2196