Согласно работе на arXiv (рубрика cs.AI), две ранние ИИ-программы, которые сами пишут программы, снова удалось запустить: Heuristic Compiler Герберта Саймона 1961 года и KBEmacs 1984 года. Авторы рассматривают обе также как теории о том, как люди программируют.
Что такое KBEmacs?
KBEmacs был работающим прототипом интеллектуального помощника программиста из проекта Programmer's Apprentice в MIT. Идея в том, что опытные программисты узнают знакомые шаблоны, так называемые клише, и собирают из них программу. Соответственно, программы строили, комбинируя клише, с помощью стилизованного английского командного языка.
Heuristic Compiler как противоположность
У Heuristic Compiler Саймона была другая цель: он моделировал программирование как решение задач и использовал анализ «средства — цель» из General Problem Solver. Проще говоря, этот метод сравнивает текущее состояние с целью и ищет шаги, которые сокращают расстояние до неё.
Запускать, а не только читать
Метод называется Executable Archaeology: исторические системы изучают, выполняя их исходный код (реанимация). Так Heuristic Compiler воспроизводит скомпилированный код из статьи Саймона 1963 года. KBEmacs воспроизводит последовательность SQRT из своего самотестирования в декабре 1984 года.
При сравнении у подходов оказывается больше общего, чем предполагалось: Heuristic Compiler тоже адаптирует уже имеющиеся процедуры, а Саймон позднее утверждал, что один лишь поиск требует большого объёма знаний о программировании.
Что KBEmacs значит для пользователей?
Для детальной работы авторы намеренно использовали Claude Code от Anthropic (Opus 5.5). Их вывод: явных исполняемых теорий программирования в современных, более мощных ИИ-ассистентах в основном не хватает.
Разработчикам это может подсказать вопрос: какие знания о шаблонах их инструменты отражают явно. Практических рекомендаций в аннотации работы нет.

