中文
相关论文

相关论文: Improving Prolog programs: Refactoring for Prolog

200 篇论文

Rewriting is a formalism widely used in computer science and mathematical logic. The classical formalism has been extended, in the context of functional languages, with an order over the rules and, in the context of rewrite based languages,…

计算机科学中的逻辑 · 计算机科学 2019-06-12 Horatiu Cirstea , Pierre-Etienne Moreau

To fork a project is to copy the existing code base and move in a direction different than that of the erstwhile project leadership. Forking provides a rapid way to address new requirements by adapting an existing solution. However, it can…

软件工程 · 计算机科学 2010-04-19 Neil A. Ernst , Steve Easterbrook , John Mylopoulos

Novice programmers often struggle to comprehend code due to vague naming, deep nesting, and poor structural organization. While explanations may offer partial support, they typically do not restructure the code itself. We propose code…

软件工程 · 计算机科学 2026-04-20 Subarna Saha , Alif Al Hasan , Fariha Tanjim Shifat , Mia Mohammad Imran

This paper presents our approach to use refactoring techniques together with code generation. Refactoring is particularly useful if not only the generated classes but also the generator itself can be adapted in an automatic fashion. We have…

软件工程 · 计算机科学 2014-09-24 Holger Krahn , Bernhard Rumpe

Tool-assisted refactoring transformations must be trustworthy if programmers are to be confident in applying them on arbitrarily extensive and complex code in order to improve style or efficiency. We propose a simple, high-level but…

编程语言 · 计算机科学 2016-07-11 Dániel Horpácsi , Judit Kőszegi , Simon Thompson

While the recently emerged Microservices architectural style is widely discussed in literature, it is difficult to find clear guidance on the process of refactoring legacy applications. The importance of the topic is underpinned by high…

软件工程 · 计算机科学 2019-01-25 Jonas Fritzsch , Justus Bogner , Alfred Zimmermann , Stefan Wagner

Automated source code refactoring, particularly extract method refactoring, is a crucial and frequently employed technique during software development. Despite its importance and frequent use by practitioners, current automated techniques…

软件工程 · 计算机科学 2024-12-25 Indranil Palit , Tushar Sharma

Both Prolog and Oz are multiparadigm languages with a logic programming core. There is a significant subset of Oz that is a syntactic variant of Prolog: pure Prolog programs with green or blue cuts and bagof/3 or setof/3 can be translated…

编程语言 · 计算机科学 2023-02-02 Peter Van Roy , Seif Haridi

ProFIT is an extension of Standard Prolog with Features, Inheritance and Templates. ProFIT allows the programmer or grammar developer to declare an inheritance hierarchy, features and templates. Sorted feature terms can be used in ProFIT…

cmp-lg · 计算机科学 2016-08-31 Gregor Erbach

We propose a special-purpose class of compression algorithms for efficient compression of Prolog programs. It is a dictionary-based compression method, specially designed for the compression of Prolog code, and therefore we name it PCA…

编程语言 · 计算机科学 2007-05-23 Alin Suciu , Kalman Pusztai

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,…

编程语言 · 计算机科学 2024-04-08 Atsushi Shirafuji , Yusuke Oda , Jun Suzuki , Makoto Morishita , Yutaka Watanobe

This paper presents an approach that evaluates best-first search methods to code refactoring. The motivation for code refactoring could be to improve the design, structure, or implementation of an existing program without changing its…

软件工程 · 计算机科学 2023-05-15 Sourena Khanzadeh , Samad Alias Nyein Chan , Richard Valenzano , Manar Alalfi

Software systems are evolving by adding new functions and modifying existing functions over time. Through the evolution, the structure of software is becoming more complex and so the understandability and maintainability of software systems…

软件工程 · 计算机科学 2014-08-22 Ginika Mahajan , Ashima

In today's world, the focus of programmers has shifted from writing complex, error-prone code to prioritizing simple, clear, efficient, and sustainable code that makes programs easier to understand. Code refactoring plays a critical role in…

Context: Modern code review is a widely employed technique in both industrial and open-source projects, serving to enhance software quality, share knowledge, and ensure compliance with coding standards and guidelines. While code review is…

软件工程 · 计算机科学 2025-01-31 Eman Abdullah AlOmar

Architecture optimization is the process of automatically generating design options, typically to enhance software's quantifiable quality attributes, such as performance and reliability. Multi-objective optimization approaches have been…

软件工程 · 计算机科学 2024-01-31 Daniele Di Pompeo , Michele Tucci

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…

机器学习 · 计算机科学 2017-06-29 Rudy Bunel , Alban Desmaison , M. Pawan Kumar , Philip H. S. Torr , Pushmeet Kohli

To remain useful for their users, software systems need to continuously enhance and extend their functionality. Nevertheless, in many object-oriented applications, features are not represented explicitly. The lack of modularization is known…

软件工程 · 计算机科学 2014-07-07 T. Pandiyavathi

Large language model (LLM) coding agents can generate working code, but their solutions often accumulate complexity, duplication, and architectural debt. Human developers address such issues through refactoring: behavior-preserving program…

软件工程 · 计算机科学 2026-03-05 Alex Thillen , Niels Mündler , Veselin Raychev , Martin Vechev

A system, which implements persistent objects, has to provide different opportunities to change the objects in arbitrary ways during their existence. A traditional realization of OO paradigm in modern programming systems has fundamental…

编程语言 · 计算机科学 2013-04-12 Evgeniy Grigoriev