Re: Refactoring history and progress

William Wake <[email protected]>
Newsgroups gmane.comp.programming.refactoring
Message-ID <[email protected]>
On Thu, Dec 17, 2009 at 10:01 PM, Adam Sroka <[email protected]> wrote:

> The wikipedia article (First hit on Steven's search) is accurate and does a
> pretty good job. The term originates with William Opdyke and predates his
> PhD thesis on the subject by only a couple years (The thesis was published
> in 1992. He also published an earlier article in 1990.)
>
> The term refactoring is a math metaphor. When you factor an equation you
> change it's structure without changing it's semantics. The point is usually
> to put it in a form that is simpler, that matches some pattern which aids
> in
> its solution, or that shows how it relates to some other known equation
> (Often used in physics to see how various phenomenon are related to one
> another.)
>

Also, the term "factoring" was being used in Yourdon & Constantine's
"Structured Design" (a huge influence) so I'm sure the word echoed through.
I don't know if they took it from math or if someone earlier had been using
it.

I think the book "Interactive Programming Environments" by Barstow et al.
includes description of some environments that did some refactoring (though
not under that name). You can find used copies for <$1. I think they
describe some good work in the Lisp world. There was a good article by
Burstall & Darlington, "A transformation system for developing recursive
programs"; if you search for who cites that & what it cites you'll have an
interesting trail.

You might try to follow some of the "program transformation" work. This
tended to be more of a design going forward than reworking an existing
design. There's interesting stuff in the formal language world and the
compiler world looking into what it means for two programs to express the
same thing. (For compilers, one part is the sheer act of transforming source
code to machine code - intended to be a behavior-preserving transformation.
Another place it came up is in optimization, as these transformations could
trade readability for performance.)

--Bill Wake
-- 
  Bill Wake   Industrial Logic, Inc.
  E-learning on refactoring and TDD, 40% off in December only -
http://industriallogic.com


[Non-text portions of this message have been removed]



------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/refactoring/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/refactoring/join
    (Yahoo! ID required)

<*> To change settings via email:
    [email protected] 
    [email protected]

<*> To unsubscribe from this group, send an email to:
    [email protected]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.