English
Related papers

Related papers: Forest: Structural Code Editing with Multiple Curs…

200 papers

In recent times, it has been shown that one can use code as data to aid various applications such as automatic commit message generation, automatic generation of pull request descriptions and automatic program repair. Take for instance the…

Machine Learning · Computer Science 2021-06-14 Syed Arbaaz Qureshi , Sonu Mehta , Ranjita Bhagwan , Rahul Kumar

Transformer-based models have demonstrated state-of-the-art performance in many intelligent coding tasks such as code comment generation and code completion. Previous studies show that deep learning models are sensitive to the input…

Software Engineering · Computer Science 2025-06-10 Yaoxian Li , Shiyi Qi , Cuiyun Gao , Yun Peng , David Lo , Zenglin Xu , Michael R. Lyu

Representing source code in a generic input format is crucial to automate software engineering tasks, e.g., applying machine learning algorithms to extract information. Visualizing code representations can further enable human experts to…

Software Engineering · Computer Science 2023-07-28 Yuejun Guo , Seifeddine Bettaieb , Qiang Hu , Yves Le Traon , Qiang Tang

Refactoring is an established technique from the object-oriented (OO) programming community to restructure code: it aims at improving software readability, maintainability and extensibility. Although refactoring is not tied to the…

Software Engineering · Computer Science 2007-05-23 Alexander Serebrenik , Tom Schrijvers , Bart Demoen

Constructive approaches to visualization authoring have been shown to offer advantages such as providing options for flexible outputs, scaffolding and ideation of new data mappings, personalized exploration of data, as well as supporting…

Human-Computer Interaction · Computer Science 2019-08-05 Gonzalo Gabriel Méndez , Jagoda Walny , Søren Knudsen , Charles Perin , Samuel Huron , Jo Vermeulen , Richard Pusch , Sheelagh Carpendale

A less complex and more straightforward program is a crucial factor that enhances its maintainability and makes writing secure and bug-free programs easier. However, due to its heavy workload and the risks of breaking the working programs,…

Programming Languages · Computer Science 2024-04-08 Atsushi Shirafuji , Yusuke Oda , Jun Suzuki , Makoto Morishita , Yutaka Watanobe

The highly parallel workflows of modern software development have made merging of source code a common activity for developers. The state of the practice is based on line-based merge, which is ubiquitously used with "git merge". Line-based…

Software Engineering · Computer Science 2022-02-21 Simon Larsén , Jean-Rémy Falleri , Benoit Baudry , Martin Monperrus

The task of redescription mining explores ways to re-describe different subsets of entities contained in a dataset and to reveal non-trivial associations between different subsets of attributes, called views. This interesting and…

Machine Learning · Computer Science 2024-10-30 Matej Mihelčić , Tomislav Šmuc

The most important way to achieve higher performance in computer systems is through heterogeneous computing, i.e., by adopting hardware platforms containing more than one type of processor, such as CPUs, GPUs, and FPGAs. Several types of…

Software Engineering · Computer Science 2020-05-19 Hugo Andrade , Ivica Crnkovic , Jan Bosch

We define a compilation scheme for a constructor-based, strongly-sequential, graph rewriting system which shortcuts some needed steps. The object code is another constructor-based graph rewriting system. This system is normalizing for the…

Programming Languages · Computer Science 2015-05-28 Sergio Antoy , Jacob Johannsen , Steven Libby

Data profiling plays a critical role in understanding the structure of complex datasets and supporting numerous downstream tasks, such as social media analytics and financial fraud detection. While existing research predominantly focuses on…

Human-Computer Interaction · Computer Science 2025-03-11 Yanwei Huang , Yan Miao , Di Weng , Adam Perer , Yingcai Wu

This paper presents Tree Notation, a new simple, universal syntax. Language designers can invent new programming languages, called Tree Languages, on top of Tree Notation. Tree Languages have a number of advantages over traditional…

Programming Languages · Computer Science 2017-10-25 Breck Yunits

Cognitive-Driven Development (CDD) is a coding design technique that aims to reduce the cognitive effort that developers place in understanding a given code unit (e.g., a class). By following CDD design practices, it is expected that the…

Software Engineering · Computer Science 2022-06-23 Leonardo Barbosa , Victor Hugo Santiago , Alberto Luiz Oliveira Tavares de Souza , Gustavo Pinto

Formal verification of a software system relies on formalising the requirements to which it should adhere, which can be challenging. While formalising requirements from natural-language, we have dependencies that lead to duplication of…

Software Engineering · Computer Science 2022-02-14 Matt Luckcuck , Marie Farrell , Oisín Sheridan

A source code difference (diff) indicates changes made by comparing new and old source codes, and it can be utilized in code reviews to help developers understand the changes made to the code. Although many diff generation methods have been…

Software Engineering · Computer Science 2024-09-27 Tsukasa Yagi , Shinpei Hayashi

Automating scientific poster generation requires hierarchical document understanding and coherent content-layout planning. Existing methods often rely on flat summarization or optimize content and layout separately. As a result, they often…

Artificial Intelligence · Computer Science 2026-04-24 Jiho Choi , Seojeong Park , Seongjong Song , Hyunjung Shim

Interpretability of learning algorithms is crucial for applications involving critical decisions, and variable importance is one of the main interpretation tools. Shapley effects are now widely used to interpret both tree ensembles and…

Machine Learning · Statistics 2022-02-03 Clément Bénard , Gérard Biau , Sébastien da Veiga , Erwan Scornet

Refactoring is a constant activity in software development and maintenance. Scale and maintain software systems are based on code refactoring. However, this process is still labor intensive, as it requires programmers to analyze the…

Compared to other programming languages (e.g., Java), Python has more idioms to make Python code concise and efficient. Although pythonic idioms are well accepted in the Python community, Python programmers are often faced with many…

Software Engineering · Computer Science 2022-07-13 Zejun Zhang , Zhenchang Xing , Xin Xia , Xiwei Xu , Liming Zhu

Many tools used to process programs, like compilers, analyzers, or verifiers, perform transformations on their intermediate program representation, like abstract syntax trees. Implementing such program transformations is a non-trivial task,…

Programming Languages · Computer Science 2026-01-21 Michael Hanus , Steven Libby
‹ Prev 1 4 5 6 7 8 10 Next ›