Restoring Old Programs

The tools we use to write and run programs have gotten much better over the years. But these are not the best tools for exploring old programs. I seek to discover what tools are.

Challenges

The authors of old programs grew their understanding while they wrote the programs. The artifacts they left behind may not show that understanding.

The student of old programs rarely has the time or motivation to recapitulate the learning steps of the original authors, although acquisition of the same experience is a reasonable goal.

The norm for machine capabilities and programming practices have evolved enough to leave a modern student unprepared to see a program for what it is.

Experiments

I've tried several times to apply concepts like software patterns and tools like interactive browsers to this problem. I restore my own programs because I know them well which simplifies the experiments.

PDP-8 Simulator Explained by extracting patterns and rendering them as hypertext annotations. 1998.

NSD Editor Restored using javascript and a special attention to repeatable methods. 2011.

Restoring the Restored Simulator as a federated wiki site mechanically transcribed from the html. 2012.