So, what good is it?
Saturday, June 24th, 2023 Alive 19,051 days
This weekendʼs project: Teaching myself FORTH on a Udamonic Scamp3 single-board computer.
My first introduction to FORTH was around 1984 with H.E.S.ʼ 64 FORTH, which everyone just called “Sixty-Forth” because itʼs easier to say and made us feel clever. I didnʼt get very far with it because the H.E.S. FORTH came on a cartridge, and I had no means of storing my completed programs. Not even a datasette. By the time I got my first 1541 disk drive, I had moved on to other things.
But I have an affinity for old programming languages, so when I ran across the Scamp on the internet, I ordered one right away. I didnʼt receive it right away, though. It was shipped from Australia via a start-up called Sendle, so the computer I ordered in March arrived at the end of June. Iʼm amazed that it works, considering it was packed in little more than a thin layer of bubble wrap, and mailed in a basic envelope, which had been torn open along the way.
By design, both 64 Forth and FlashForth on the Scamp are FORTH supersets. Programs being only semi-portable between platforms is considered a feature, not a bug, in FORTH. Still, all FORTHs conform to the same programming paradigms and seem to have 95% compatibility with one another. Much like computers in the 1970ʼs, when youʼd buy a generic book of BASIC programs at Brentanoʼs and then it was up to you to customize the code to fit your machine.
Interestingly, the H.E.S. variation of FORTH seems more capable than the FlashForth that the Scamp runs. 64 Forth has over 500 words in its vocabulary, and comes with a split-screen I.D.E. method of interaction. The Scamp superset of FlashForth has just 425 words, and is designed for very bare-bones TTY output. No fancy ANSI windows here.
On the other hand, the Scamp can be powered off and when it's plugged in again you can pick up right where you left off. With any Commodore 64 FORTH, once you restart, you have to rebuild or reload all of the words you have previously defined. So while FlashForth isn't flashy, it's certainly more useful to use for a long-term project.
So what will I do with a 55-year-old programming language in 2023? Iʼm going to learn. Iʼm going to explore. Iʼm going to expand my ways of thinking and understand how things were done in the past so that I can do things better in the future.
Whenever I get a new piece of kit, Iʼm automatically challenged with ”What good is it?” I shouldnʼt have to answer that. Intellectual curiosity should be rewarded and saluted. Not everything is a start-up. Not everything is a business. Not everything has to make money. 50 years ago, nobody would have asked someone who does woodworking in his spare time, “How are you going to monetize that?” The notion would have been ludicrous. And, not surprisingly, the sort of people who donʼt understand intellectual curiosity are also the same group of people who spend their free time laying on a couch binge watching the latest zombiethon on the trendy streaming service of the day.