Output details
11 - Computer Science and Informatics
University of York
Sound refactorings
<07>Originality: This paper formalises refactorings of object-oriented programs as transformation rules; it is the only account of refactorings as refinements in the literature. The language considered caters for main-stream challenging constructs like inheritance, recursive classes, dynamic binding, visibility, and type tests and casts. Rigour: Soundness is addressed by proof in terms of an algebraic semantics and a data refinement theory. Significance: This work follows from a project that was jointly supported by a Brazilian Research Agency and the American NSF as part of a collaborative programme; in its final evaluation, the project was given the highest commendation: merit of honour.