Forth!
(Image of "Crazy Chuck" from my giant write-up of Forth, also linked below.)
Forth-related content on my site:
-
2025: Implementing a Forth
-
2024-2025: Snobol4th - A Forth written in Snobol4! (Articles plus The Snobol4th Repo)
-
2023: Forth: The programming language that writes itself My big essay on Forth and Charles H. Moore. (An expansion on these slides which came from these notes)
-
2023: Meow5 - my Forth-like language (also i386 NASM assembly)
-
2022: Nasmjf - my NASM assembly port of JonesForth (i386 NASM assembly)
-
Perpetual: Forth in Space (update is TODO!)
-
Perpetual: Forth cards (various notes in my "Virtual Box of Cards")
Resources
-
The A-Z of Programming Languages: Forth (Computerworld 2008) (my de-paginated archived copy)
External Links
From James Hague’s "programming in the twenty-first century" (where I first really picked up the Forth itch!):
-
https://prog21.dadgum.com/8.html - Deriving Forth
-
https://prog21.dadgum.com/20.html - In Praise of Non-Alphanumeric Identifiers
-
https://prog21.dadgum.com/32.html - Kilobyte Constants, a Simple and Beautiful Idea that Hasn’t Caught On
-
https://prog21.dadgum.com/33.html - Understanding What It’s Like to Program in Forth
-
https://prog21.dadgum.com/38.html - Puzzle Languages
-
https://prog21.dadgum.com/128.html - Don’t Fall in Love With Your Technology
-
https://prog21.dadgum.com/151.html - Minimalism in an Age of Tremendous Hardware
TODO: dump my various forth bookmarks here!
Yossi Kreinin is a fantastic developer/writer and this article is no exception: My history with Forth and stack machines (yosefk.com). This is awesome. Read this and everything else on that blog before any of my stuff.
Phil Tipping has created the incredible fantasy "mainframe" computer PlasMa. One of the microcode instruction sets PlasMa runs is a FORTH CPU! (By auspicious coincidence, FORTH is PlasMa’s fourth instruction set).
"The words are based on JonesFORTH, and the Program Counter and Instruction Register lights show the address of the FORTH word about to be obeyed. The remaining lights show stack pointers and contents, plus other FORTH-related items. FORTH’s input routine accepts input by default from the external QWERTY keyboard, and output is sent to the teletype screen."
It supports a bunch of simulated and physical peripherals such as an actual dot-matrix printer via parallel port. I think the highlight for me is watching the circles of LEDs that simulate a pair of tape reels seeking and reading "magnetic tape"!