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 条
  • [41] Numerical Static Analysis of Interrupt-Driven Programs via Sequentialization
    Wu, Xueguang
    Chen, Liqian
    Mine, Antoine
    Dong, Wei
    Wang, Ji
    2015 PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON EMBEDDED SOFTWARE (EMSOFT), 2015, : 55 - 64
  • [42] Towards Understanding the Value of False Positives in Static Code Analysis
    Dimastrogiovanni, Carlo
    Laranjeiro, Nuno
    2016 SEVENTH LATIN-AMERICAN SYMPOSIUM ON DEPENDABLE COMPUTING (LADC), 2016, : 119 - 122
  • [43] Abstract domain adequacyWeakening completeness towards static analysis precision
    Isabella Mastroeni
    International Journal on Software Tools for Technology Transfer, 2024, 26 (6) : 747 - 765
  • [44] Static analysis of C programs via region-based memory model
    Dong, Yu-Kun
    Jin, Da-Hai
    Gong, Yun-Zhan
    Xing, Ying
    Ruan Jian Xue Bao/Journal of Software, 2014, 25 (02): : 357 - 372
  • [45] Static Analysis of Runtime Errors in Interrupt-Driven Programs via Sequentialization
    Wu, Xueguang
    Chen, Liqian
    Mine, Antoine
    Dong, Wei
    Wang, Ji
    ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2016, 15 (04)
  • [46] Carraybound: Static Array Bounds Checking in C Programs Based on Taint Analysis
    Gao, Fengjuan
    Chen, Tianjiao
    Wang, Yu
    Situ, Lingyun
    Wang, Linzhang
    Li, Xuandong
    8TH ASIA-PACIFIC SYMPOSIUM ON INTERNETWARE (INTERNETWARE 2016), 2016, : 81 - 90
  • [47] Towards Effective Static Analysis Approaches for Security Vulnerabilities in Smart Contracts
    Ghaleb, Asem
    PROCEEDINGS OF THE 37TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE 2022, 2022,
  • [48] Static Analysis of Run-Time Errors in Embedded Critical Parallel C Programs
    Mine, Antoine
    PROGRAMMING LANGUAGES AND SYSTEMS, 2011, 6602 : 398 - 418
  • [49] Detecting Build Conflicts in Software Merge for Java']Java Programs via Static Analysis
    Towqir, Sheikh Shadab
    Shen, Bowen
    Gulzar, Muhammad Ali
    Meng, Na
    PROCEEDINGS OF THE 37TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE 2022, 2022,
  • [50] Reusing Single-Language Analyses for Static Analysis of Multi-language Programs
    Roth, Tobias
    COMPANION PROCEEDINGS OF THE 2023 ACM SIGPLAN INTERNATIONAL CONFERENCE ON SYSTEMS, PROGRAMMING, LANGUAGES, AND APPLICATIONS: SOFTWARE FOR HUMANITY, SPLASH COMPANION 2023, 2023, : 16 - 18