Time+Place: Tuesday 04/11/2008 14:30 Room 337-8 Taub Bld.
Title: Refactoring using Type Constraints (previously presented at SAS'07)
Speaker: Frank Tip http://domino.research.ibm.com/comm/research_people.nsf/pages/tip.index.html
Affiliation: IBM Watson Research Center
Host: Yossi Gil

Abstract:


Type constraints express subtype-relationships between the types of 
program expressions that are required for type-correctness, and were 
originally proposed as a convenient framework for solving type checking 
and type inference problems. In this paper, we show how type constraints 
can be used as the basis for practical refactoring tools. In our approach, 
a set of type constraints is derived from a type-correct program P. 
The main insight behind our work is the fact that P constitutes just one 
solution to this constraint system, and that alternative solutions may 
exist that correspond to refactored versions of P. We show how a number 
of refactorings for manipulating types and class hierarchies can be 
expressed naturally using type constraints. Several refactorings in the 
standard distribution of Eclipse are based on our results.