FREE CONTRIBUTION CHRONOLOGY · 1948–1957

Machines translate languages

How can one program translate another program without changing its intended meaning?

How can one program translate another program without changing its intended meaning?

Assemblers, routine libraries, compilers, and FORTRAN moved programming above raw opcodes. The machine could now perform the repetitive translation work that programmers had done by hand.

A translator preserves a source program’s meaning while changing its representation and resolving details required by the target machine.

Reconstruct the mechanism

  1. Parse source symbols into structured operations
  2. Record names and addresses in a symbol table
  3. Transform source operations into an intermediate or target form
  4. Resolve references and emit executable instructions or reusable routines

Build a two-pass translator for assignment and arithmetic expressions; show symbols, intermediate form, relocation, and emitted instructions.

Evidence and uncertainty

Avoid the absolute “first compiler”. Define what each translator did and compare earlier, parallel, and later systems on the same criteria.

Open the interactive lesson →