Many software systems are mixed-language systems today, i.e., they bind together components defined in different programming and specification languages. Analyses and refactorin...
Refactoring is about changing the design of existing code without changing its behaviour, but with the aim of making code easier to understand, modify, or reuse. Taking Haskell an...
In this paper, we present our approach to a visual refactoring tool, the Type Access Analyzer (TAA), which uses program analysis to detect code smells and for suggesting and perfo...
Philip Mayer, Andreas Meissner, Friedrich Steimann
— Software maintenance tools for program analysis and refactoring rely on a meta-model capturing the relevant properties of programs. However, what is considered relevant may cha...
Modern development environments support refactoring by providing atomically behaviour-preserving transformations. While useful, these transformations are limited in three ways: (i)...