← Back to Concept Index

software-duality

Software simultaneously exists as a document (text) and as a machine (running program), and understanding software requires recognizing this dual nature.

1 chapter across 1 book

Mirror Worlds (1991)David Gelernter

Chapter 3

Chapter 3 of David Gelernter's "Mirror Worlds" develops a comprehensive model of software as an embodied information machine, emphasizing the dual nature of software as both a document and a dynamic, running machine. It introduces the conceptual framework of computational landscapes divided into plots and executed by an Actor following scripts, and stresses the critical design goals of efficiency and clarity, achieved through principles like recursive simplicity and modularization. The chapter concludes by linking software design to the physical computer hardware, explaining how high-level programming languages are compiled into machine language instructions executed by the processor and memory.