

Forth – The Early Years (1991) - vmorgulis
http://www.colorforth.com/HOPL.html

======
cmpaul
Forth was my first programming language for work from 1999-2004 at FedEx,
developing the software used by the courier scanning device the Enhanced
SuperTracker (EST) -- which was used in production between 1987 and 2007... 20
years! I still look back fondly on it for battle-hardening me on recursion and
the function stack. I still marvel at the ability of the language to "fold in"
on itself when compiled, resulting in a miniscule binary footprint. Also,
since you define your own "words" (or functions), it supports a DSL approach
to coding... no syntax to learn, you write your own!

One of my favorite descriptions of Forth:

"There is no syntax, no redundancy, no typing. There are no errors that can be
detected. Forth uses postfix, there are no parentheses. No indentation.
Comments are deferred to the documentation. No hooks, no compatibility. Words
are never hyphenated. There's no heirarchy. No files. No operating system."

[http://www.colorforth.com/1percent.html](http://www.colorforth.com/1percent.html)

EDIT: I survived and currently work at a YC company and do not have a neck-
beard.

------
fizfaz
BYTE issue "The Forth language" contains an article by Chuck Moore "The
evolution of Forth, an Unusual Language":

[https://archive.org/stream/byte-
magazine-1980-08/1980_08_BYT...](https://archive.org/stream/byte-
magazine-1980-08/1980_08_BYTE_05-08_The_Forth_Language#page/n77/mode/2up)

------
kabdib
FORTH is a glorious little language. You can get a bunch done in a very small
amount of code. You can get a running FORTH system working, from scratch, very
very quickly (on bare metal, maybe a couple of days).

That said, I've seen very few _projects_ successfully in FORTH. There are a
few, but not many.

Additionally, historically the language has been a lightning rod for kooks and
bad engineering practices. All of the experience I have of FORTH in the video
game industry was watching people serially fail (they would typically get
twisted up in their FORTH environment, get obsesssed with the FORTHness of
this and that, and forgot to ship a title; more mature users would run into
intractable organizational and performance problems that forced them to ditch
the language).

But it's still a great language, and a worthwhile thing for software
practitioners to know and play with.

~~~
RodgerTheGreat
How about a puzzle game about Forth, written in Forth, running on a Forth
machine?
[https://github.com/JohnEarnest/Mako/tree/master/games/Warrio...](https://github.com/JohnEarnest/Mako/tree/master/games/Warrior2)

Obligatory Javascript implementation of said Forth VM:
[http://johnearnest.github.io/Mako.js/?rom=Warrior](http://johnearnest.github.io/Mako.js/?rom=Warrior)

------
jcr
previous discussion from 766 days ago ago:

[https://news.ycombinator.com/item?id=6103793](https://news.ycombinator.com/item?id=6103793)

------
nabeshima
Today, what is the typical software one would build with Forth? What are the
libraries like?

~~~
bandrami
I wrote the OS for my Raspberry Pi in Forth (which necessarily meant writing
the interpreter).

I think that's an important thing: anybody who's seriously doing Forth work
has written his or her own interpreter to do it with. Which may be as it
should be.

~~~
bucma
Any chance that you've put the code out there somewhere? I'd love to see it.

------
mbrutsch
I used Forth from 1983 to 1987, on the Atari 400. It was an awesome language.

~~~
colomon
I used it for about the same period on the Commodore 64. On a 64K 1Mhz
machine, it compiled faster than any tool I use today does on a 3Ghz machine.
The resulting code was compact enough to make 64K seem like a lot of memory
and drastically faster than using the built-in BASIC.

------
platz
which programming language had a hooded unibomber-type guy in glasses on the
home page? I thought it was forth but can't find that page anymore.

