English
Related papers

Related papers: Concolic Testing of JavaScript using Sparkplug

200 papers

Numerous tools have been developed to aggressively block the execution of popular JavaScript programs (JS) in Web browsers. Such blocking also affects functionality of webpages and impairs user experience. As a consequence, many privacy…

Cryptography and Security · Computer Science 2016-03-22 Muhammad Ikram , Hassan Jameel Asghar , Mohamed Ali Kaafar , Balachander Krishnamurthy , Anirban Mahanti

The effectiveness of concolic testing deteriorates as the size of programs increases. A promising way out is to test programs modularly, e.g., on a per function or class basis. Alas, this idea hits a roadblock in modern programming…

Programming Languages · Computer Science 2020-06-23 Shu-Hung You , Robert Bruce Findler , Christos Dimoulas

Eradication of code smells is often pointed out as a way to improve readability, extensibility and design in existing software. However, code smell detection in large systems remains time consuming and error-prone, partly due to the…

Software Engineering · Computer Science 2012-05-01 Tiago Pessoa , Fernando Brito e Abreu , Miguel Pessoa Monteiro , Sergio Bryton

Software testing remains the most widely used methodology for validating quality of code. However, effectiveness of testing critically depends on the quality of test suites used. Test cases in a test suite consist of two fundamental parts:…

Software Engineering · Computer Science 2025-07-22 Shan Jiang , Chenguang Zhu , Sarfraz Khurshid

Increasing complexity in software systems places a growing demand on reasoning tools that unlock vulnerabilities manifest in source code. Many current approaches focus on vulnerability analysis as a classifying task, oversimplifying the…

Artificial Intelligence · Computer Science 2025-09-23 Ala Jararweh , Michael Adams , Avinash Sahu , Abdullah Mueen , Afsah Anwar

With the increasing usage of JavaScript in web applications, there is a great demand to write JavaScript code that is reliable and maintainable. To achieve these goals, classes can be emulated in the current JavaScript standard version. In…

Software Engineering · Computer Science 2016-02-19 Leonardo Humberto Silva , Daniel Hovadick , Marco Tulio Valente , Alexandre Bergel , Nicolas Anquetil , Anne Etien

The use of intrinsic functions to leverage hardware-specific capabilities is a crucial approach for optimizing library performance. Many mainstream libraries implement a large number of vectorized algorithms on Arm or x86 SIMD…

Software Engineering · Computer Science 2026-03-30 Liutong Han , Zhiyuan Tan , Hongbin Zhang , Pengcheng Wang , Chu Kang , Mingjie Xing , Yanjun Wu

Asynchrony has become an inherent element of JavaScript, as an effort to improve the scalability and performance of modern web applications. To this end, JavaScript provides programmers with a wide range of constructs and features for…

Programming Languages · Computer Science 2019-01-14 Thodoris Sotiropoulos , Benjamin Livshits

Many JavaScript applications perform HTTP requests to web APIs, relying on the request URL, HTTP method, and request data to be constructed correctly by string operations. Traditional compile-time error checking, such as calling a…

Software Engineering · Computer Science 2017-02-17 Erik Wittern , Annie T. T. Ying , Yunhui Zheng , Julian Dolby , Jim A. Laredo

Branch coverage of source code is a very widely used test criterion. Moreover, branch coverage is a similar problem to line coverage, MC/DC and the coverage of assertion violations, certain runtime errors and various other types of test…

Software Engineering · Computer Science 2021-05-13 Nicky Williams

Large Language Models (LLMs) have demonstrated remarkable potential in debugging for various programming languages. However, the application of LLMs to Verilog debugging remains insufficiently explored. Here, we present VeriDebug, an…

Software Engineering · Computer Science 2025-04-29 Ning Wang , Bingkun Yao , Jie Zhou , Yuchen Hu , Xi Wang , Nan Guan , Zhe Jiang

Bugs that are detected earlier during the development lifecycle are easier and cheaper to fix, whereas bugs that are found during production are difficult and expensive to address, and may have dire consequences. Type systems are…

Programming Languages · Computer Science 2021-10-12 Catarina Gamboa , Paulo Alexandre Santos , Christopher S. Timperley , Alcides Fonseca

Modern websites extensively rely on JavaScript to implement both functionality and tracking. Existing privacy enhancing content blocking tools struggle against mixed scripts, which simultaneously implement both functionality and tracking,…

Cryptography and Security · Computer Science 2024-05-29 Abdul Haddi Amjad , Shaoor Munir , Zubair Shafiq , Muhammad Ali Gulzar

We present LitmusKt - the first tool for litmus testing concurrent programs in Kotlin. The tool's novelty also lies in the fact that Kotlin is a multiplatform language, i.e., it compiles into multiple platforms, which means that the…

Programming Languages · Computer Science 2025-04-23 Denis Lochmelis , Evgenii Moiseenko , Yaroslav Golubev , Anton Podkopaev

In-context learning (ICL), teaching a large language model (LLM) to perform a task with few-shot demonstrations rather than adjusting the model parameters, has emerged as a strong paradigm for using LLMs. While early studies primarily used…

Computation and Language · Computer Science 2023-05-24 Man Luo , Xin Xu , Zhuyun Dai , Panupong Pasupat , Mehran Kazemi , Chitta Baral , Vaiva Imbrasaite , Vincent Y Zhao

We present a type system and inference algorithm for a rich subset of JavaScript equipped with objects, structural subtyping, prototype inheritance, and first-class methods. The type system supports abstract and recursive objects, and is…

Programming Languages · Computer Science 2016-10-19 Satish Chandra , Colin S. Gordon , Jean-Baptiste Jeannin , Cole Schlesinger , Manu Sridharan , Frank Tip , Youngil Choi

Automated library APIs testing is difficult as it requires exploring a vast space of parameter inputs that may involve objects with complex data types. Existing search based approaches, with limited knowledge of relations between object…

Software Engineering · Computer Science 2025-01-13 Jiageng Li , Zhen Dong , Chong Wang , Haozhen You , Cen Zhang , Yang Liu , Xin Peng

Software comments are critical for human understanding of software, and as such many comment generation techniques have been proposed. However, we find that a systematic evaluation of the factual accuracy of generated comments is rare; only…

Software Engineering · Computer Science 2024-06-24 Sungmin Kang , Louis Milliken , Shin Yoo

Reducing application runtime, scaling parallel applications to higher numbers of processes/threads, and porting applications to new hardware architectures are tasks necessary in the software development process. Therefore, developers have…

Software Engineering · Computer Science 2017-12-06 Ronny Tschüter , Johannes Ziegenbalg , Bert Wesarg , Matthias Weber , Christian Herold , Sebastian Döbel , Ronny Brendel

Large Language Models (LLMs) have demonstrated exceptional coding capability. However, as another critical component of programming proficiency, the debugging capability of LLMs remains relatively unexplored. Previous evaluations of LLMs'…

Software Engineering · Computer Science 2024-06-07 Runchu Tian , Yining Ye , Yujia Qin , Xin Cong , Yankai Lin , Yinxu Pan , Yesai Wu , Haotian Hui , Weichuan Liu , Zhiyuan Liu , Maosong Sun