Researchers have conducted a project they term "Executable Archaeology," a methodology focused on studying historical computational systems by running their original code. This process, which they call "reanimation," was applied to two distinct programs from the mid-20th century: Herbert Simon's Heuristic Compiler (1961) and KBEmacs (1984). While these programs were developed for different purposes and eras, they both served as explicit, executable theories of how humans approach the task of programming.
The Heuristic Compiler was an experimental model designed to treat programming as a problem-solving task. It utilized means-ends analysis—a method derived from the General Problem Solver—to investigate the nature of programming. In contrast, KBEmacs was a prototype for an intelligent programming assistant developed by MIT's Programmer's Apprentice project. KBEmacs operated on the theory that expert programmers recognize and combine familiar patterns, or "cliches," using a stylized English command language to build programs. By reanimating these systems, the researchers were able to reproduce the compiled code from Simon's 1963 paper and the SQRT sequence from KBEmacs's 1984 self-test.
The study revealed a surprising commonality between the two systems: both functioned by adapting existing routines. Simon later argued that search-based methods alone are insufficient without a large body of pre-existing programming knowledge. Interestingly, the researchers used a modern AI tool, Anthropic's Claude Code (Opus 5.5), to assist in the detailed reanimation work. They noted a significant distinction between these historical systems and modern tools: the explicit, executable theories of programming embodied by the Heuristic Compiler and KBEmacs are largely absent from today's more capable AI coding assistants, which rely on different underlying mechanisms to generate code.
