Saving Scratch Work

With all the dynamic and interactive interfaces we have for programming today, I want to mention something of a fault in the way that most people use things like REPLs and other interactive programming sessions. Viz., we usually throw all that scratch work away! Often, what we put in our interactive sessions is really the making of some valuable long term artifact.

One of the things I like about programming on paper is the automatic transcript of ideas and code that I can use later. Perhaps it becomes a new test case, or maybe a new section on simpler but erroneous versions of the function I am writing.

Fortunately, the interactive sessions I have used all support some type of transcript mechanism for saving work. So there really is no excuse: don't throw away all that work!