Refactorings are program transformations that preserve the observable behavior of the program. The refactoring function inlining replaces a function call with the contents of the referenced function definition. To preserve the behavior, properties such as reference relations must be retained and language constructs like 'return' statements must be replaced. Implementing a behavior preserving refactoring is a time-consuming and error-prone task. In the past, such refactorings have only been implemented for one language at a time, thus they cannot be reused in other languages.This thesis presents a language parametric function inlining algorithm that can be applied to any language. The algorithm performs function inlining and checks the trans...
Software is becoming a pervasive presence in our lives, powering computing systems in the home, in b...
Spoofax is a language workbench for efficient development of textual domain-specific languages toget...
We show that abstract interpretation-based static program analysis can be made ecient and precise en...
Refactoring is the process of changing the design of a program without changing what it does. Typica...
Building an automated refactoring tool for a new programming language is an expensive and time-consu...
We present a new approach for building source-to-source transformations that can run on multiple pro...
Refactoring tools allow the programmer to pretend they are working with a richer language where the ...
Refactoring is the process of redesigning existing code without changing its functionality. Refactor...
Refactoring tools are an important tool for developers, but their reliability can be questionable at...
A refactoring is a program transformation that improves the design of the source code, while preserv...
Static analysis is the name given to a number of compile time analysis techniques used to automatica...
All computers run software, such as operating systems, web browsers, and video games, which are used...
Refactorings are structured changes to existing software that leave its externally observable behavi...
Tool support for refactoring code written in mainstream languages such as C and C is currently lacki...
textabstractSoftware is becoming a pervasive presence in our lives, powering computing systems in th...
Software is becoming a pervasive presence in our lives, powering computing systems in the home, in b...
Spoofax is a language workbench for efficient development of textual domain-specific languages toget...
We show that abstract interpretation-based static program analysis can be made ecient and precise en...
Refactoring is the process of changing the design of a program without changing what it does. Typica...
Building an automated refactoring tool for a new programming language is an expensive and time-consu...
We present a new approach for building source-to-source transformations that can run on multiple pro...
Refactoring tools allow the programmer to pretend they are working with a richer language where the ...
Refactoring is the process of redesigning existing code without changing its functionality. Refactor...
Refactoring tools are an important tool for developers, but their reliability can be questionable at...
A refactoring is a program transformation that improves the design of the source code, while preserv...
Static analysis is the name given to a number of compile time analysis techniques used to automatica...
All computers run software, such as operating systems, web browsers, and video games, which are used...
Refactorings are structured changes to existing software that leave its externally observable behavi...
Tool support for refactoring code written in mainstream languages such as C and C is currently lacki...
textabstractSoftware is becoming a pervasive presence in our lives, powering computing systems in th...
Software is becoming a pervasive presence in our lives, powering computing systems in the home, in b...
Spoofax is a language workbench for efficient development of textual domain-specific languages toget...
We show that abstract interpretation-based static program analysis can be made ecient and precise en...