English
Related papers

Related papers: Erlang Code Evolution Control

200 papers

Evolving software is challenging, even more when it exists in many different variants. Such software evolves not only in time, but also in space--another dimension of complexity. While evolution in space is supported by a variety of…

Software Engineering · Computer Science 2021-12-03 Christoph Derks , Daniel Strüber , Thorsten Berger

Complex software systems evolve frequently, e.g., when introducing new features or fixing bugs during maintenance. However, understanding the impact of such changes on system behavior is often difficult. Many approaches have thus been…

Software Engineering · Computer Science 2020-01-09 Thomas Krismayer , Michael Vierhauser , Rick Rabiser , Paul Grünbacher

The occurrence of similar code, or `code clones', can make program code difficult to read, modify and maintain. This paper describes industrial case studies of clone detection and elimination using a refactoring and clone detection tool. We…

Software Engineering · Computer Science 2017-04-03 Simon Thompson , Huiqing Li , Andreas Schumacher

Automated Code Revision (ACR) tools aim to reduce manual effort by automatically generating code revisions based on reviewer feedback. While ACR tools have shown promising performance on historical data, their real-world utility depends on…

Software Engineering · Computer Science 2026-02-17 Shirin Pirouzkhah , Souhaila Serbout , Alberto Bacchelli

Refactoring is the process of changing a software system in such a way that it does not alter the external behavior of the code yet improves its internal structure. Not only researchers, but also practitioners, need to know about past…

Software Engineering · Computer Science 2018-08-08 Eunjong Choi , Kenji Fujiwara , Norihiro Yoshida , Shinpei Hayashi

Refactoring is an activity that improves the internal structure of the code without altering its external behavior. When performed on the production code, the tests can be used to verify that the external behavior of the production code is…

Software Engineering · Computer Science 2015-06-25 Ali Parsai , Alessandro Murgia , Quinten David Soetens , Serge Demeyer

This paper studies obfuscation techniques for Erlang programs at the source, abstract syntax tree, BEAM assembly, and BEAM bytecode levels. We focus on transformations that complicate reverse engineering, decompilation, and recompilation…

Programming Languages · Computer Science 2026-04-16 Gregory Morse , Tamás Kozsik

Having a model and being able to implement open-ended evolutionary systems is important for advancing our understanding of open-endedness. Complex systems science and newest generation high-level programming languages provide intriguing…

Neural and Evolutionary Computing · Computer Science 2022-03-02 Patrik Christen

We describe a novel approach for adapting an existing software model checker to perform precise runtime verification. The software under test is allowed to communicate with the wider environment (including the file system and network). The…

Software Engineering · Computer Science 2018-06-01 Katarína Kejstová , Petr Ročkai , Jiří Barnat

To refactor already working code while keeping reliability, compatibility and perhaps security, we can borrow ideas from micropass/nanopass compilers. By treating the procedure of software refactoring as composing code transformations, and…

Software Engineering · Computer Science 2023-08-15 Yu Liu

We formalize a new type system for Elixir, a dynamically typed functional programming language of growing popularity that runs on the Erlang virtual machine. Our system combines gradual typing with semantic subtyping to enable precise,…

Programming Languages · Computer Science 2025-09-30 Giuseppe Castagna , Guillaume Duboc

Autonomous space vehicles need adaptive control strategies that can accommodate unanticipated environmental conditions. The evaluation of new strategies can often be done only by actually trying them out in the real physical environment.…

Optimization and Control · Mathematics 2007-05-23 G. W. Greenwood , X. Song

Software systems are getting more complex as the system grows where maintaining such system is a primary concern for the industry. Code clone is one of the factors making software maintenance more difficult. It is a process of replicating…

Software Engineering · Computer Science 2012-05-28 Md. Monzur Morshed , Md. Arifur Rahman , Salah Uddin Ahmed

Software logs record system activities, aiding maintainers in identifying the underlying causes for failures and enabling prompt mitigation actions. However, maintainers need to inspect a large volume of daily logs to identify the anomalous…

Software Engineering · Computer Science 2023-08-16 Yintong Huo , Cheryl Lee , Yuxin Su , Shiwen Shan , Jinyang Liu , Michael R. Lyu

Estimating software testability can crucially assist software managers to optimize test budgets and software quality. In this paper, we propose a new approach that radically differs from the traditional approach of pursuing testability…

Software Engineering · Computer Science 2023-08-01 Luca Guglielmo , Leonardo Mariani , Giovanni Denaro

Code changes constitute one of the most important features of software evolution. Studying them can provide insights into the nature of software development and also lead to practical solutions - recommendations and automations of popular…

Software Engineering · Computer Science 2021-08-05 Yaroslav Golubev , Jiawei Li , Viacheslav Bushev , Timofey Bryksin , Iftekhar Ahmed

Evolving a software process model without a retrospective and, in consequence, without an understanding of the process evolution, can lead to severe problems for the software development organization, e.g., inefficient performance as a…

Software Engineering · Computer Science 2014-01-21 Alexis Ocampo , Jürgen Münch

Code super-optimization is the task of transforming any given program to a more efficient version while preserving its input-output behaviour. In some sense, it is similar to the paraphrase problem from natural language processing where the…

Machine Learning · Computer Science 2017-06-29 Rudy Bunel , Alban Desmaison , M. Pawan Kumar , Philip H. S. Torr , Pushmeet Kohli

Live programming environments enable programmers to edit a running program and obtain immediate feedback on each individual change. The liveness quality is valued by programmers to help work in small steps and continuously add or correct…

Software Engineering · Computer Science 2017-04-05 Toni Mattis , Patrick Rein , Robert Hirschfeld

Computer Science course instructors routinely have to create comprehensive test suites to assess programming assignments. The creation of such test suites is typically not trivial as it involves selecting a limited number of tests from a…

Logic in Computer Science · Computer Science 2022-07-21 Filipe Marques , António Morgado , José Fragoso Santos , Mikoláš Janota