an:06247707
Zbl 1279.68113
Carvalho Júnior, Antonio; Silva, Leila; Cornélio, Márcio
Using CafeOBJ to mechanise refactoring proofs and application
EN
Sampaio, Augusto (ed.), Proceedings of the second Brazilian symposium on formal methods (SBMF 2005), Porto Alegre, RS, Brazil, November 30, 2005. Amsterdam: Elsevier. Electronic Notes in Theoretical Computer Science 184, 39-61 (2007).
2007
a
68Q42 68N30
rewriting systems; refactorings; CafeOBJ
Summary: We show how rewriting systems, in particular CafeOBJ, can be used to automatically prove refactoring rules. In addition, a small case study that illustrates the application of a refactoring rule in an arbitrary program is also developed. Our approach is based on a sequential object-oriented language of refinement (\textsc{rool}) similar to Java. We have implemented the \textsc{rool} grammar in CafeOBJ, as well as the laws that define its semantics. Each refactoring rule is derived by the application of these laws, in a constructive way. The refactorings are also implemented in CafeOBJ, allowing the reduction of an arbitrary program.
For the entire collection see [Zbl 1275.68031].