http://www.joelonsoftware.com/articles/fog0000000069.html
His central argument is that old code has been tested and fixed and throwing it away throws away useful knowledge.
I think that when rewrites get done developers remember the big lessons but forget the small ones that lead to bugs.
Every fibre of my being says "toss the code" every time, but I tend to agree with Joel that a lot of the time that's wrong.
Ian