Paris Review:
How much rewriting do you do?
Hemingway:
It depends. I rewrote the ending to A Farewell To Arms, the last page of it, thirty-nine times before I was satisfied.
Paris Review:
Was there some technical problem there? What was it that stumped you?
Hemingway:
Getting the words right.
ReWriting is improving the style and structure of your text, while preserving its intended meaning.
Before the word processor, it meant manually copying the original text and incorporating changes. Similarly, before interactive work stations,
ReWriting a program also included manually copying the original. Perhaps this explains the confusion between the terms writing and
ReWriting in common programmer usage.
To many programmers,
ReWriting a program, means
WritingCodeFromScratch. This opposes the term
ReWriting in general usage which is a cornerstone of good writing; see
WritingIsRewriting. Perhaps one intention is to help distinguish
ReWriting and
ReFactoring which are otherwise similar practices.
Much as
ReWriting is to text,
ReFactoring is improving the style and structure of existing source, while preserving its meaning to the computer. Also like
ReWriting,
ReFactoring rarely involves throwing the source away and starting over. Although, see
Substitute Algorithm in
RefactoringImprovingTheDesignOfExistingCode for an exception.
See also
RewritingIsNotRefactoring,
WhatIsRefactoring,
WhatIsReworking,
RewriteRules,
RewritingHat