Summary
Twenty-three years after their dissertations, Opdyke and Griswold reflect on how refactoring became mainstream. They trace the path from formal definition (behavior-preserving program transformation with preconditions) through Fowler’s popularization to ubiquitous IDE support. A key observation: as refactoring went mainstream, the formal rigor was stripped away. “Refactoring” became synonymous with “cleaning up code” — losing the behavioral guarantee that made it safe.
What it means for our work
This retrospective directly motivates Refactory’s design. The degenerate usage Opdyke and Griswold describe — refactoring without behavioral guarantees — is exactly what happens when an AI agent “refactors” code by generating a text diff. Refactory restores the original definition: preconditions checked, behavior preserved, transformations composed safely. The paper also validates our naming choice — building on the formal lineage, not the colloquial usage.