Executable Archaeology: Reanimating the Heuristic Compiler (1961) and KBEmacs (1984)
Step back in time to debug the future: this paper masterfully reanimates two foundational AI programming systems from the 60s and 80s, revealing their explicit theories of programming. It's a fascinating blend of computational history, AI archaeology, and meta-programming, perfect for HN's intellectual curiosity.
3
Score
0
Comments
#22
Highest Rank
6h
on Front Page
First Seen
Oct 28, 5:00 PM
Last Seen
Oct 28, 10:00 PM
Rank Over Time
The Lowdown
This paper introduces 'Executable Archaeology,' a method for studying historical computational systems by running their original code, and applies it to two pioneering AI programs that modeled programming.
- Heuristic Compiler (1961): Developed by Herbert Simon, this program modeled programming as a problem-solving task, utilizing means-ends analysis, similar to the General Problem Solver.
- KBEmacs (1984): A prototype intelligent programming assistant from MIT's Programmer's Apprentice project, it posited that expert programmers combine familiar patterns or 'cliches' through a stylized English command language.
- The 'reanimation' process successfully reproduced the original outputs for both systems, validating the methodology.
- Despite their different origins and approaches, a side-by-side examination revealed shared underlying principles; for instance, the Heuristic Compiler also adapted existing routines, and Simon later emphasized the role of programming knowledge in search.
- Intriguingly, the authors leveraged a modern AI tool (Anthropic's Claude Code) for significant portions of the reanimation work, creating a recursive loop of AI studying historical AI.
- The paper concludes by highlighting a key distinction: these older systems embodied explicit, executable theories of programming, a characteristic often absent in today's more capable AI coding assistants.
This work offers a unique perspective on the evolution of AI and programming theory, demonstrating how historical code can still offer profound insights into the nature of computation.