English
Related papers

Related papers: PyCG: Practical Call Graph Generation in Python

200 papers

Call graph construction is the foundation of inter-procedural static analysis. PYCG is the state-of-the-art approach for constructing call graphs for Python programs. Unfortunately, PyCG does not scale to large programs when adapted to…

Software Engineering · Computer Science 2024-09-11 Kaifeng Huang , Yixuan Yan , Bihuan Chen , Zixin Tao , Xin Peng

Python has emerged as one of the most popular programming languages, extensively utilized in domains such as machine learning, data analysis, and web applications. Python's dynamic nature and extensive usage make it an attractive candidate…

Software Engineering · Computer Science 2024-03-04 Islem Bouzenia , Bajaj Piyush Krishan , Michael Pradel

Hardware generation languages (HGLs) increase hardware design productivity by creating parameterized modules and test benches. Unfortunately, existing tools are not widely adopted due to several demerits, including limited support for…

Hardware Architecture · Computer Science 2023-09-12 Jintao Sun , Zeke Wang , Tao Lu , Wenzhi Chen

Interprocedural analysis refers to gathering information about the entire program rather than for a single procedure only, as in intraprocedural analysis. Interprocedural analysis enables a more precise analysis; however, it is complicated…

Programming Languages · Computer Science 2021-05-10 Aharon Abadi , Bar Makovitzki , Ron Shemer , Shmuel Tyszberowicz

Call graphs depict the static, caller-callee relation between "functions" in a program. With most source/target languages supporting functions as the primitive unit of composition, call graphs naturally form the fundamental control flow…

Software Engineering · Computer Science 2016-11-17 Ganesh M. Narayan , K. Gopinath , V. Sridhar

Large Language Models (LLMs) are increasingly being explored for their potential in software engineering, particularly in static analysis tasks. In this study, we investigate the potential of current LLMs to enhance call-graph analysis and…

Software Engineering · Computer Science 2025-07-17 Ashwin Prasad Shivarpatna Venkatesh , Rose Sunil , Samkutty Sabu , Amir M. Mir , Sofia Reis , Eric Bodden

Knowledge graphs (KGs) have emerged as a prominent data representation and management paradigm. Being usually underpinned by a schema (e.g., an ontology), KGs capture not only factual information but also contextual knowledge. In some…

Artificial Intelligence · Computer Science 2024-03-07 Nicolas Hubert , Pierre Monnin , Mathieu d'Aquin , Davy Monticolo , Armelle Brun

Python is one of the most popular programming languages; as such, projects written in Python involve an increasing number of diverse security vulnerabilities. However, existing state-of-the-art analysis tools for Python only support a few…

Software Engineering · Computer Science 2026-01-22 Yoann Marquer , Domenico Bianculli , Lionel C. Briand

We present PyFCG, an open source software library that ports Fluid Construction Grammar (FCG) to the Python programming language. PyFCG enables its users to seamlessly integrate FCG functionality into Python programs, and to use FCG in…

Computation and Language · Computer Science 2025-05-20 Paul Van Eecke , Katrien Beuls

Python is a popular dynamic programming language, evidenced by its ranking as the second most commonly used language on GitHub. However, its dynamic type system can lead to potential type errors, leading researchers to explore automatic…

Software Engineering · Computer Science 2023-07-19 Yun Peng , Chaozheng Wang , Wenxuan Wang , Cuiyun Gao , Michael R. Lyu

Test case generation (TCG) for Python poses distinctive challenges due to the language's dynamic nature and the absence of strict type information. Previous research has successfully explored automated unit TCG for Python, with solutions…

Recently, dynamically typed languages, such as Python, have gained unprecedented popularity. Although these languages alleviate the need for mandatory type annotations, types still play a critical role in program understanding and…

Programming Languages · Computer Science 2022-02-08 Ibrahim Abdelaziz , Julian Dolby , Kavitha Srinivas

Code sharing and reuse is a widespread use practice in software engineering. Although a vast amount of open-source Python code is accessible on many online platforms, programmers often find it difficult to restore a successful runtime…

Software Engineering · Computer Science 2022-01-19 Wei Cheng , Xiangrong Zhu , Wei Hu

A production microservice application may provide multiple services, queries of a service may have different call graphs, and a microservice may be shared across call graphs. It is challenging to improve the resource efficiency of such…

Software Engineering · Computer Science 2024-12-30 Fanrong Du , Jiuchen Shi , Quan Chen , Li Li , Minyi Guo

Graph representations of programs are commonly a central element of machine learning for code research. We introduce an open source Python library python_graphs that applies static analysis to construct graph representations of Python…

Machine Learning · Computer Science 2022-08-17 David Bieber , Kensen Shi , Petros Maniatis , Charles Sutton , Vincent Hellendoorn , Daniel Johnson , Daniel Tarlow

The increasing demand for digital literacy and artificial intelligence (AI) fluency in the workforce has highlighted the need for scalable, efficient programming instruction. This study evaluates the effectiveness of integrating generative…

Computers and Society · Computer Science 2025-05-28 Ian McCulloh , Pedro Rodriguez , Srivaths Kumar , Manu Gupta , Viplove Raj Sharma , Benjamin Johnson , Anthony N. Johnson

Large language models (LLMs) have demonstrated unparalleled prowess in mimicking human-like text generation and processing. Among the myriad of applications that benefit from LLMs, automated code generation is increasingly promising. The…

Software Engineering · Computer Science 2023-11-15 Lincoln Murr , Morgan Grainger , David Gao

Large Language Models (LLMs) have become a popular choice for many Natural Language Processing (NLP) tasks due to their versatility and ability to produce high-quality results. Specifically, they are increasingly used for automatic code…

Artificial Intelligence · Computer Science 2024-08-30 Jessica López Espejel , Mahaman Sanoussi Yahaya Alassan , Merieme Bouhandi , Walid Dahhane , El Hassane Ettifouri

Software comprehension can be extremely time-consuming due to the ever-growing size of codebases. Consequently, there is an increasing need to accelerate the code comprehension process to facilitate maintenance and reduce associated costs.…

Software Engineering · Computer Science 2024-01-15 Krzysztof Borowski , Bartosz Baliś , Tomasz Orzechowski

Enterprise level software is implemented using multi-layer architecture. These layers are often implemented using de-coupled solutions with millions of lines of code. Programmers often have to track and debug a function call from user…

Software Engineering · Computer Science 2016-10-17 Anne Veenendaal , Elliot Daly , Eddie Jones , Zhao Gang , Sumalini Vartak , Rahul S Patwardhan
‹ Prev 1 2 3 10 Next ›