Third ACM Workshop on Refactoring Tools (WRT'09)

ACM logo

in conjunction with
October 25-29, 2009
Orlando, Florida


- Submission deadline for position papers: EXTENDED to August 28, 2009.
- Notification of acceptance: September 14, 2009.
- Workshop date and location: Monday, Oct 26, 2009. in Fantasia Ballroom P


Refactoring is the process of applying behavior-preserving transformations to a program with the objective of improving the program's design. A specific refactoring is identified by a name (e.g., Extract Method), a set of preconditions, and a set of specific transformations that need to be performed.

Tool support for refactoring is highly desirable because checking the preconditions for a given refactoring often requires nontrivial program analysis, and applying the transformations may affect many locations throughout a program. In recent years, the emergence of light-weight programming methodologies such as Extreme Programming has generated a great amount of interest in refactoring, and refactoring support has become a required feature in modern-day IDEs.

Until recently, there has not been a suitable forum for discussions among researchers and developers of such tools. Our prior refactoring tools workshops (initially at ECOOP 2007, then at OOPSLA 2008) clearly met a need, and there was strong interest expressed in holding a follow-on workshop.

We invite developers and researchers in the field of refactoring to submit presentations and demonstration proposals about practical refactoring tools.


While there is a great deal of interest in developing tool support for refactoring, researchers and tool vendors rarely work together.

This forum will enable the transfer of ideas and expertise both ways:

By bringing together the researchers and tool vendors:

This workshop is the next step in our ongoing effort to create such a community, building on our successful refactoring workshops at ECOOP 2007 and OOPSLA 2008.

Potential topics are those related to refactoring tools including, but not restricted to:


The list of accepted papers can be accessed from the wiki.

Opening and Administrivia 8.30
  • 1-minute introductions
  • Suggest breakout topics
Long Talks Session 1 9.15
  • Performance Trade-offs in Implementing Refactoring Support for Objective-C [Bowdidge]
  • Fine Slicing for Advanced Method Extraction [Abadi, Ettinger, Feldman]
  • A Model of Refactoring Tool Use [Murphy-Hill]
Break 10.30
  • Coffee Break
  • Discussion
  • Posters
    • Maintaining Clones Through Eclipse Refactoring Extensions [Tairas, Gray]
    • Refactoring for High Performance Computing [Cong]
    • CSeR: A Code Editor for Tracking and Highlighting Detailed Clone Differences [Jacob, Hou]
Long Talks Session 2 10.30
  • Extracting Concurrency via Refactoring in X10 [Markstrum, Fuhrer]
  • Concurrency Refactoring for X10 [Fuhrer, Saraswat]
  • Refactoring in Multiple Representations [Abadi, Feldman]
Break 11.15
  • Coffee Break
  • Open Discussion
Short Talks Session 11.30
  • Cross-language Refactoring for Groovy and Java in Eclipse [Sommerlad, Reinhard, Sidler]
  • Testing-framework-aware Refactoring [Li, Thompson]
  • Renaming Support for Modelica [Hedin, Nilsson-Nyman, Akesson]
  • Toward a Language-Agnostic Syntactic Representation for Preprocessed Code [Overbey, Michelotti, Johnson]
Lunch 12.00
Discussion 1.15
  • Discussion
  • Determine breakout topics
Breakout Session 1 1.45
Breakout Session 1 Results 2.45
Coffee Break 3.00
Panel 3.15
Breakout Session 2 3.45
Breakout Session 2 Results 4.30
Wrap-up 4.45


Prospective participants in this workshop are encouraged to submit 4-page position papers, explaining their interest in refactoring tools, and including a brief description of the system that they intend to present. We also encourage developers of widely used refactoring tools (e.g., Eclipse, NetBeans, IntelliJ, Visual Studio) to submit a demonstration proposal about their systems.

Based on submissions, the schedule will include a mix of system demonstrations, short presentations, panel discussions and informal discussions. Proceedings will appear in the ACM Digital Library.

Submissions must not exceed 4 pages, in the ACM SIGPLAN 10 point format. Templates for Word and LaTeX are available at



Submissions for WRT'09 will be handled through EasyChair. Papers are submitted through the EasyChair WRT'09 page. If you don't have an account, you can create one here.