Towards a Generic Framework for Trustworthy Program Refactoring
Refactoring has to preserve the dynamics of the transformed program with respect to a particular definition of semantics and behavioral equivalence. Apparently, it is always challenging to relate executable refactoring implementations with the formal semantics of the transformed language. There are a number of approaches to specifying program transformations on various kinds of program models, but trustworthiness of refactoring is still to be improved by means of formal verification. We propose a specification formalism and a generic framework for its processing, which claims to allow semi-automatic execution and formal verification, as well as to be adaptable to multiple paradigms.