Forth entstand aus einem Problem das Moore eingebrockt hatte: er hatte zur Steuerung Teleskops einer Sternwarte einen Rechner gekauft. Das jedoch wirklich nur ein Rechner - also ohne jegliche Software!
Eine komplettere Abhandlung der Geschichte von findet sich hier
Forth ist sehr leicht auch als zu verstehen. Wesentliche Datenstruktur in Forth ist der Stack oder Stapel die Notation von Ausdrücken entspricht der Polnischen Notation' UPN .
Forth benutzt zur Arbeit zwei Stacks einen für Daten den anderen für Rücksprungadressen der Subroutinen. Diese Subroutinen werden in Worte genannt und in einem Dictionary abgelegt. Ein jeweils konkret vorliegendes Forth-System praktisch nur aus diesem Wörterbuch selbst wobei Worte des Kernwortschatzes als Programmmteile potentiell eine ausfüllen: Einmal regeln sie in ihrem niedergelegten die komplette interne Funktionalität des Programmiersystems selbst einschließlich der präsentierten Benutzerschnittstelle und gleichzeitig ist einzelne Wort dem Programmierer zur allfälligen eigenen für die geplante Anwendung zugänglich. Interaktiv lässt der Wortschatz Schritt für Schritt erweitern. Das soll Forth ist komplett in Forth programmiert so es sehr leicht auf neue Rechner und übertragen werden kann. Assemblercode (üblicherweise auch in gibt es nur in denjenigen paar Worten die Anbindung an die Umgebung bewerkstelligen und auch noch in denjenigen die das Arbeitstempo Systems bestimmen.
Alle Ausdrücke werden in Umgekehrter Polnischer Notation ( UPN ) beschrieben. "Umgekehrte Polnische Notation" klingt als das eher kompliziert und unnatürlich aber damit nichts anderes gemeint als beispielsweise Formulierungen wie:
Wäsche waschen Brot schneiden sieben addieren als Formel: 7 +)
Also ganz gewöhnlich alltagssprachlich wird erst Ding genannt mit dem man etwas tun ("Wäsche") und danach das was man damit ("waschen").
Forth funktioniert nach dem Stapel-Prinzip. Wenn zum Beispiel (5 + 3) * (7 2) in Forth ausrechnen will gibt man Sequenz ein: 5 3 + 7 2 * .
Der abschliessende Punkt sorgt für die des Ergebnisses. Wenn man den Punkt nicht verbleibt das Rechenergebniss auf dem Stapel. Die des Forth-Ausdrucks beginnt mit dem Zeilenabschluss (Return).
SWAP
n1 n2 n3
->
n1 n2 n3
vertauscht die ersten beiden Stack-Elemente
DUP
n1 n2
->
n1 n2 n2
dupliziert das oberste Stack-Element
ROT
n1 n2 n3 n4
->
n1 n3 n4 n2
rotiert die obersten drei Stack-Elemente
ROLL
n1 n2 n3 3
->
n3 n1 n2
PICK
n1 n2 n3 2
->
n3 n2 n1 n2
DROP
n1 n2 n3 n4
->
n1 n2 n3
entfernt das oberste Stack-Element aus dem Stapel
Forth eignet sich für das interaktive von Steuerungssystemen. Da sind dann Programmpassagen möglich
Ventil öffnen Hupe einschalten usw...
Die frühesten bekannten Anwendungen waren Steuerungen Observatorien denn die eingangs genannte Teleskopsteuerung wurde vielen anderen Observatorien übernommen.