中文
相关论文

相关论文: Towards Generic Refactoring

200 篇论文

Catalogs of refactoring have key importance in software maintenance and evolution, since developers rely on such documents to understand and perform refactoring operations. Furthermore, these catalogs constitute a reference guide for…

软件工程 · 计算机科学 2022-11-17 Aline Brito , Andre Hora , Marco Tulio Valente

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…

软件工程 · 计算机科学 2018-08-08 Eunjong Choi , Kenji Fujiwara , Norihiro Yoshida , Shinpei Hayashi

This technical report presents a general framework for parsing a variety of grammar formalisms. We develop a grammar formalism, called an Abstract Grammar, which is general enough to represent grammars at many levels of the hierarchy,…

计算与语言 · 计算机科学 2018-01-22 Daniel Harasim , Chris Bruno , Eva Portelance , Martin Rohrmeier , Timothy J. O'Donnell

Due to the growing complexity of software systems, there has been a dramatic increase and industry demand for tools and techniques on software refactoring in the last ten years, defined traditionally as a set of program transformations…

软件工程 · 计算机科学 2020-07-07 Chaima Abid , Vahid Alizadeh , Marouane Kessentini , Thiago do Nascimento Ferreira , Danny Dig

Users of program analyses expect that results change predictably in response to changes in their programs, but many analyses fail to provide such robustness. This paper introduces a theoretical framework that provides a unified language to…

编程语言 · 计算机科学 2026-04-14 Zachary Kincaid , Shaowei Zhu

Refactoring is one of the most important activities in software engineering which is used to improve the quality of a software system. With the advancement of deep learning techniques, researchers are attempting to apply deep learning…

软件工程 · 计算机科学 2024-05-01 Bridget Nyirongo , Yanjie Jiang , He Jiang , Hui Liu

This study presents a systematic approach to specifying data objects with the help of initial algebras. The primary aim is to describe the set-up to be found in modern functional programming languages such as Haskell and ML, although it can…

计算机科学中的逻辑 · 计算机科学 2009-09-22 Chris Preston

Software frequently converts data from one representation to another and vice versa. Naively specifying both conversion directions separately is error prone and introduces conceptual duplication. Instead, bidirectional programming…

编程语言 · 计算机科学 2019-02-20 Li-yao Xia , Dominic Orchard , Meng Wang

Reduction-based interpreters are traditionally defined in terms of a one-step reduction function which systematically decomposes a term into a potential redex and context, contracts the redex, and recomposes it to construct the new term to…

编程语言 · 计算机科学 2025-08-18 Casper Bach

Developers often refactor source code to improve its quality during software development. A challenge in refactoring is to determine if it can be applied or not. To help with this decision-making process, we aim to search for past…

软件工程 · 计算机科学 2023-10-04 Motoki Abe , Shinpei Hayashi

Dependently typed programming languages allow sophisticated properties of data to be expressed within the type system. Of particular use in dependently typed programming are indexed types that refine data by computationally useful…

计算机科学中的逻辑 · 计算机科学 2015-07-01 Robert Atkey , Patricia Johann , Neil Ghani

The application of automatic transformation processes during the formal development and optimization of programs can introduce encumbrances in the generated code that programmers usually (or presumably) do not write. An example is the…

编程语言 · 计算机科学 2007-05-23 Maria Alpuente , Santiago Escobar , Salvador Lucas

Writing dataflow analyzers requires both language and domain-specificity. That is to say, each programming language and each program property requires its own analyzer. To enable a streamlined, user-driven approach to dataflow analyzers, we…

编程语言 · 计算机科学 2024-05-21 Abdullah Rasheed

In previous work, we introduced the fundamentals and a supporting combinator library for \emph{strategic programming}. This an idiom for generic programming based on the notion of a \emph{functional strategy}: a first-class generic function…

编程语言 · 计算机科学 2007-05-23 Ralf Laemmel , Joost Visser

The idea of using unfolding as a way of computing a program semantics has been applied successfully to logic programs and has shown itself a powerful tool that provides concrete, implementable results, as its outcome is actually source…

编程语言 · 计算机科学 2017-08-29 José María Rey-Poza , Julio Mariño-Carballo

Our research is part of a wider project that aims to investigate and reason about the correctness of scheme-based source code transformations of Erlang programs. In order to formally reason about the definition of a programming language and…

编程语言 · 计算机科学 2020-08-19 Péter Bereczky , Dániel Horpácsi , Simon Thompson

Most scripting languages nowadays use regex pattern-matching libraries. These regex libraries borrow the syntax of regular expressions, but have an informal semantics that is different from the semantics of regular expressions, removing the…

形式语言与自动机理论 · 计算机科学 2014-02-17 Sérgio Medeiros , Fabio Mascarenhas , Roberto Ierusalimschy

We present a system for generating parsers based directly on the metaphor of parsing as deduction. Parsing algorithms can be represented directly as deduction systems, and a single deduction engine can interpret such deduction systems so as…

cmp-lg · 计算机科学 2008-02-03 Stuart M. Shieber , Yves Schabes , Fernando C. N. Pereira

The main purpose of this article is to describe the taxonomy of computer languages according to the levels of abstraction. There exists so many computer languages because of so many reasons like the evolution of better computer languages…

编程语言 · 计算机科学 2013-11-15 Dr. Brijender Kahanwal

To solve hard problems, AI relies on a variety of disciplines such as logic, probabilistic reasoning, machine learning and mathematical programming. Although it is widely accepted that solving real-world problems requires an integration…

人工智能 · 计算机科学 2020-01-14 Vaishak Belle , Luc De Raedt