The word "refactor" has been insanely successful in getting managers to approve rewrites. Before the Agile Manifesto, when programmers wanted to take a completed function and write it again, they would ask to "rewrite" it. The manager would ask what's wrong with it, the programmers would say, "nothing, really" and the manager would decline the request. Now, the programmers ask to "refactor" the function, the manager asks what that means, and the programmers give a confused answer whose only consistent message is that whatever-it-is is urgently needed. So the manager says, "okay, I guess."
The first case leads to crufty codebases that are hard to add new functions to. The second case leads to writing the same functions over and over and getting nowhere. It's not clear to me which is better, but it is clear to me that substituting the word "refactor" for "rewrite" has changed the world.