- Author
- Dave Gauer (ratfactor.com)
- Published
- Created 2023-02-02, updated 2026-07-09
- Kind
- Personal illustrated web page adapted from a talk, with the author's own hands-on projects
- Original
- ratfactor.com/forth/the_programming_language_that_writes_itself.html
- Subject
- Compilers and interpreters
- Themes
- How forms evolve, Small means
What it is
Dave Gauer adapted this page from slides for a short talk. It records a personal journey to understand Forth in historical context. The author argues that history explains why Forth looks the way it does.
What it says
- Gauer says postfix, stacks and concatenative style describe Forth only in hindsight. History explains why it exists.
- The page traces Forth to a 1958 interpreter by Charles Moore. It grew in stages until named Forth in 1968.
- Gauer says indirect threaded code is what made porting Forth to many minicomputers possible.
- The page says Forth has almost no syntax. IF, THEN and even comments are ordinary words.
- Gauer cites very small systems. They include Frank Sergeant's 66-byte Forth kernel and sectorforth at 512 bytes.
- The page reports Forth in spacecraft, including Harris RTX2010 processors on the Philae lander.
- Gauer calls the author's own Meow5 experiment a failure. It kept leading back to Forth's own choices.
What evidence it gives
The page quotes Moore's own histories and papers on Forth in space. It shows assembly and Forth code from the author's port of JonesForth. It describes the author's Meow5 experiment. It gives no benchmarks, and most history comes from secondary sources.
Interests and limits
The author is an enthusiast. The author says most online Forth writers, including the author, are newcomers. The page mixes opinion with history. One example is the claim that Forth has the simplest syntax. Spaceflight examples come from papers and web pages the author did not test. Drawings are illustrative, and the author says some details may not reflect actual events.
Connections
These links are this wiki's own reading, not claims the sources make.
- On the foolishness of "natural language programming" (EWD 667). Dijkstra values formal texts because they rule nonsense out. Gauer's Forth has almost no syntax, and even comments are ordinary words. So how much ruling-out comes from grammar, and how much from defined words?