© University of Kent - Contact | Feedback | Legal | FOI | Cookies
A User-extensible Refactoring Tool for Erlang Programs
Huiqing Li and Simon Thompson
Technical Report 4-11, University of Kent, October 2011.Abstract
Refactoring is the process of changing the design of a program without changing what it does. While it is possible to refactor a program by hand, tool support is considered invaluable as it allows large-scale refactorings to be performed easily. However, most refactoring tools are black boxes, supporting a fixed set of `core' refactorings.
This paper reports the framework built into Wrangler -- a refactoring and code inspection tool for Erlang programs -- that allows users to define for themselves refactorings and code inspection functions that suit their needs. These are defined using a template- and rule-based program transformation and analysis API. User-defined refactorings are no ``second-class citizens'': like the existing ones supported by Wrangler, user-defined refactorings benefit from features such as results preview, layout preservation, selective refactoring, undo and so on.
Download publication 465 kbytes (PDF)Bibtex Record
@techreport{3171,
author = {Huiqing Li and Simon Thompson},
title = {A {U}ser-extensible {R}efactoring {T}ool for {E}rlang {P}rograms},
month = {October},
year = {2011},
pages = {182-196},
keywords = {determinacy analysis, Craig interpolants},
note = {},
doi = {},
url = {http://www.cs.kent.ac.uk/pubs/2011/3171},
publication_type = {techreport},
submission_id = {6265_1318519600},
institution = {University of Kent},
number = {4-11},
}