1. A. Ajouli, J. Cohen & J.-C. Royer (2013): Transformations between Composite and Visitor Implementations in Java. In: Software Engineering and Advanced Applications (SEAA), 2013 39th EUROMICRO Conference on, pp. 25–32, doi:10.1109/SEAA.2013.53.
  2. Sandrine Blazy & Xavier Leroy (2009): Mechanized semantics for the Clight subset of the C language. Journal of Automated Reasoning 43(3), pp. 263–288, doi:10.1007/s10817-009-9148-3.
  3. J. Brant & F. Steimann (2015): Refactoring Tools are Trustworthy Enough and Trust Must be Earned. Software, IEEE 32(6), pp. 80–83, doi:10.1109/MS.2015.145.
  4. J. Cohen, R. Douence & A. Ajouli (2012): Invertible Program Restructurings for Continuing Modular Maintenance. In: Software Maintenance and Reengineering (CSMR), 2012 16th European Conference on, pp. 347–352, doi:10.1109/CSMR.2012.42.
  5. Julien Cohen & Akram Ajouli (2013): Practical Use of Static Composition of Refactoring Operations. In: Proceedings of the 28th Annual ACM Symposium on Applied Computing, SAC '13. ACM, pp. 1700–1705, doi:10.1145/2480362.2480684.
  6. A. Garrido (2005): Program refactoring in the presence of preprocessor directives. University of Illinois at Urbana-Champaign, Champaign, IL, USA. Available at
  7. Xi Ge & Emerson Murphy-Hill (2014): Manual Refactoring Changes with Automated Refactoring Validation. In: Proceedings of the 36th International Conference on Software Engineering, ICSE 2014. ACM, New York, NY, USA, pp. 1095–1105, doi:10.1145/2568225.2568280.
  8. Günter Kniesel & Helge Koch (2004): Static composition of refactorings. Science of Computer Programming 52(1–3), pp. 9–51, doi:10.1016/j.scico.2004.03.002. Special Issue on Program Transformation.
  9. Xavier Leroy (2007–2015). CompCert C web page :
  10. Huiqing Li & Simon Thompson (2005): Formalisation of Haskell Refactorings. In: Marko van Eekelen & Kevin Hammond: Trends in Functional Programming. Available at
  11. Huiqing Li, Simon Thompson & Claus Reinke (2005): The Haskell Refactorer, HaRe, and its API. Electronic Notes in Theoretical Computer Science 141(4), pp. 29–34, doi:10.1016/j.entcs.2005.02.053. Proceedings of the Fifth Workshop on Language Descriptions, Tools, and Applications (LDTA 2005).
  12. Melina Mongiovi (2011): Safira: A Tool for Evaluating Behavior Preservation. In: Proceedings of the ACM International Conference Companion on Object Oriented Programming Systems Languages and Applications Companion, OOPSLA '11. ACM, New York, NY, USA, pp. 213–214, doi:10.1145/2048147.2048213.
  13. Melina Mongiovi, Rohit Gheyi, Gustavo Soares, Leopoldo Teixeira & Paulo Borba (2014): Making Refactoring Safer Through Impact Analysis. Sci. Comput. Program. 93, pp. 39–64, doi:10.1016/j.scico.2013.11.001.
  14. Yoann Padioleau (2009): Parsing C/C++ Code without Pre-processing. In: Oege de Moor & Michael I. Schwartzbach: Compiler Construction, Lecture Notes in Computer Science 5501. Springer Berlin Heidelberg, pp. 109–125, doi:10.1007/978-3-642-00722-4.08emwidth.35em height.6pt.08em9.
  15. F. Pfenning & C. Elliott (1988): Higher-order Abstract Syntax. SIGPLAN Not. 23(7), pp. 199–208, doi:10.1145/960116.54010.
  16. Max Schäfer, Julian Dolby, Manu Sridharan, Emina Torlak & Frank Tip (2010): Correct Refactoring of Concurrent Java Code. In: ECOOP 2010 – Object-Oriented Programming, Lecture Notes in Computer Science 6183. Springer Berlin Heidelberg, pp. 225–249, doi:10.1007/978-3-642-14107-2.08emwidth.35em height.6pt.08em11.
  17. Max Schäfer, Torbjörn Ekman & Oege de Moor (2008): Challenge Proposal: Verification of Refactorings. In: Proceedings of the 3rd Workshop on Programming Languages Meets Program Verification, PLPV '09. ACM, New York, NY, USA, pp. 67–72, doi:10.1145/1481848.1481859.
  18. Gustavo Soares (2012): Automated Behavioral Testing of Refactoring Engines. In: Proceedings of the 3rd Annual Conference on Systems, Programming, and Applications: Software for Humanity, SPLASH '12. ACM, New York, NY, USA, pp. 105–106, doi:10.1145/2384716.2384760.
  19. D. Spinellis (2003): Global analysis and transformations in preprocessed languages. Software Engineering, IEEE Transactions on 29(11), pp. 1019–1030, doi:10.1109/TSE.2003.1245303.
  20. Diomidis Spinellis (2010): CScout: A refactoring browser for C. Science of Computer Programming 75(4), pp. 216–231, doi:10.1016/j.scico.2009.09.003. Experimental Software and Toolkits (EST 3): A special issue of the Workshop on Academic Software Development Tools and Techniques (WASDeTT 2008).
  21. Nik Sultana & Simon Thompson (2008): A Certified Refactoring Engine. In: Draft Proceedings of the Ninth Symposium on Trends in Functional Programming (TFP).
  22. Nik Sultana & Simon Thompson (2008): Mechanical Verification of Refactorings. In: Proceedings of the 2008 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-based Program Manipulation, PEPM '08. ACM, New York, NY, USA, pp. 51–60, doi:10.1145/1328408.1328417.
  23. Marian Vittek (2003): Refactoring browser with preprocessor. In: Software Maintenance and Reengineering, 2003. Proceedings. Seventh European Conference on, pp. 101–110, doi:10.1109/CSMR.2003.1192417.

Comments and questions to:
For website issues: