Main Page | See live article | Alphabetical index

Adapt to adapt

Adapt to adapt is a condition seen in practice of computer programming.

The more a program changes, the more tolerant of change it will become. It adapts to adapt. Refactoring achieves this. A program must have invariants - assumptions that it can make about the world and what is required of itself - and they aren't always values that can be set in a configuration file: see Invariants aren't always constants. The assumptions which become ingrained into a program are structural, philosophical, and intellectuatal suppositions of what the program ought to do. These assumptions create Code momentum - a commitment that becomes harder and harder to uncommit to as the program accelerates headlong in a given direction. No other degenerate lapse of code sense is as uniquely horriable as Code momentum. By definition, huge amounts of search and alteration must be done manually - by hand - to undo the damage.

These rules cover key elements of refactoring and design related to Code momentum.

Adapt to adapt checklist:

See also Inner classes, God object, and No sex until marriage. The article is originally from Perl Design Patterns Book
See also: