English
Related papers

Related papers: Does Code Structure Affect Comprehension? On Using…

200 papers

The names of variables and functions serve as implicit documentation and are instrumental for program comprehension. But choosing good meaningful names is hard. We perform a sequence of experiments in which a total of 334 subjects are…

Software Engineering · Computer Science 2021-03-16 Dror G. Feitelson , Ayelet Mizrahi , Nofar Noy , Aviad Ben Shabat , Or Eliyahu , Roy Sheffer

Variable and function names are extremely important for program comprehension. It is therefore also important to study how developers select names. But controlled experiments on naming are hindered by the need to describe to experimental…

Software Engineering · Computer Science 2021-03-17 Omer Regev , Michael Soloveitchik , Dror G. Feitelson

Program code contains functions, variables, and data structures that are represented by names. To promote human understanding, these names should describe the role and use of the code elements they represent. But the names given by…

Software Engineering · Computer Science 2022-09-08 Moshe Munk , Dror G. Feitelson

What factors impact the comprehensibility of code? Previous research suggests that expectation-congruent programs should take less time to understand and be less prone to errors. We present an experiment in which participants with…

Software Engineering · Computer Science 2013-04-29 Michael Hansen , Robert L. Goldstone , Andrew Lumsdaine

Consistency is one of the keys to maintainable source code and hence a successful software project. We propose a novel method of extracting the intent of programmers from source code of a large project (~300kLOC) and checking the semantic…

Software Engineering · Computer Science 2022-03-21 Yusuke Shinyama , Yoshitaka Arahori , Katsuhiko Gondow

This paper delves into the intricacies of code summarization using advanced transformer-based language models. Through empirical studies, we evaluate the efficacy of code summarization by altering function and variable names to explore…

Machine Learning · Computer Science 2023-10-30 Debanjan Mondal , Abhilasha Lodha , Ankita Sahoo , Beena Kumari

Naming is very important in software development, as names are often the only vehicle of meaning about what the code is intended to do. A recent study on how developers choose names collected the names given by different developers for the…

Software Engineering · Computer Science 2024-02-16 Rachel Alpern , Ido Lazer , Issar Tzachor , Hanit Hakim , Sapir Weissbuch , Dror G. Feitelson

Identifier names, which comprise a significant portion of the codebase, are the cornerstone of effective program comprehension. However, research has shown that poorly chosen names can significantly increase cognitive load and hinder…

Software Engineering · Computer Science 2025-07-25 Carol Wong , Mai Abe , Silvia De Benedictis , Marissa Halim , Anthony Peruma

We investigate how code obfuscation influences human understanding of programs through an output-prediction task. To study this effect, we construct multiple levels of obfuscation, ranging from unobfuscated code to transformations involving…

Software Engineering · Computer Science 2026-03-10 Anh H. N. Nguyen , Jack Le , Ilse Lahnstein Coronado , Tien N. Nguyen

Reading code is an essential activity in software maintenance and evolution. Several studies with human subjects have investigated how different factors, such as the employed programming constructs and naming conventions, can impact code…

Software Engineering · Computer Science 2021-10-05 Delano Oliveira , Reydne Bruno , Fernanda Madeiral , Fernando Castor

Across languages, numeral systems vary widely in how they construct and combine numbers. While humans consistently learn to navigate this diversity, large language models (LLMs) struggle with linguistic-mathematical puzzles involving…

Computation and Language · Computer Science 2025-10-16 Antara Raaghavi Bhattacharya , Isabel Papadimitriou , Kathryn Davidson , David Alvarez-Melis

Understanding program code is a complicated endeavor. As such, myriad different factors can influence the outcome. Investigations of program comprehension, and in particular those using controlled experiments, have to take these factors…

Software Engineering · Computer Science 2021-03-17 Dror G. Feitelson

Previous studies have demonstrated that neural code comprehension models are vulnerable to identifier naming. By renaming as few as one identifier in the source code, the models would output completely irrelevant results, indicating that…

Software Engineering · Computer Science 2023-02-08 Shuzheng Gao , Cuiyun Gao , Chaozheng Wang , Jun Sun , David Lo , Yue Yu

Variable environment is the time-honored way of making sense of free variables, used in programming language theory as well when writing interpreters and some compilers. Algebraic effects give another way, as was pointed already at HOPE…

Programming Languages · Computer Science 2023-12-29 Oleg Kiselyov

Large Language Models (LLMs) achieve strong results on code tasks, but how they derive program meaning remains unclear. We argue that code communicates through two channels: structural semantics, which define formal behavior, and…

Software Engineering · Computer Science 2025-10-06 Cuong Chi Le , Minh V. T. Pham , Cuong Duc Van , Hoang N. Phan , Huy N. Phan , Tien N. Nguyen

In Constraint Programming, constraints are usually represented as predicates allowing or forbidding combinations of values. However, some algorithms exploit a finer representation: error functions. Their usage comes with a price though: it…

Artificial Intelligence · Computer Science 2023-03-09 Florian Richoux , Jean-François Baffier

It is believed that mechanisms including intermediate values enable composable inductive programming (CIP) to be used to produce software of any size. We present the results of a study that investigated the relationships between program…

Programming Languages · Computer Science 2021-07-06 Edward McDaid , Sarah McDaid

In many application domains, domain-specific languages can allow domain experts to contribute to collaborative projects more correctly and efficiently. To do so, they must be able to understand program structure from reading existing source…

Programming Languages · Computer Science 2025-11-18 Philip Heltweg , Georg-Daniel Schwarz , Dirk Riehle

The essential variables in a finite function $f$ are defined as variables which occur in $f$ and weigh with the values of that function. The number of essential variables is an important measure of complexity for discrete functions. When…

Computational Complexity · Computer Science 2015-01-05 Sl. Shtrakov , I. Damyanov

We describe a method for utilizing the known structure of input data to make learning more efficient. Our work is in the domain of programming languages, and we use deep neural networks to do program analysis. Computer programs include a…

Neural and Evolutionary Computing · Computer Science 2019-04-01 Zehra Sura , Tong Chen , Hyojin Sung
‹ Prev 1 2 3 10 Next ›