FORTH FORTH 3-4 Datenstrukturen
ATOS - Around The Operating System Das ATOS-Magazin 3/96

FORTH 4-4

Ein Beispiel als Abschluß

Zum Schluß ein kleines Programmbeispiel:

In C:
        /* Hello world */
void main(void)
{
        printf("hello, world");
        getch();        /* Wartet auf einen Tastendruck */
}
in FORTH:

Version A:
:main        (--)
        ." hello, world" key drop ;
Der erste Unterschied ist, daß in C Hello world compiliert werden muß, um aufgerufen werden zu können. Die FORTH-Version kann, da FORTH auch Interpreter ist, direkt aufgerufen werden (auf die Möglichkeit, Standaloneprogramme zu erzeugen, möchte ich hier nicht eingehen).

Jeder neue Befehl (genauer Wort) wird in FORTH mit ':' eingeleitet (colon). Es folgt der Name des Wortes, in diesem Fall 'main'. '(' leitet einen Kommentar ein und ')' beendet ihn. '."' compiliert den folgenden String, und gibt ihn bei Aufruf von main auf der Console aus. 'key' wartet auf einen Tastendruck des Anwenders und 'drop' löscht den zurückgegebenen Wert. ';' schließlich beendet die Definition von main.

main kann jetzt wie jedes andere vordefinierte Wort aufgerufen und benutzt werden.

: oft   (--)    10 0 do main cr loop ;
So, das solls fürs erste gewesen sein. Sollte jemand Interesse an FORTH haben, so kann er mit dem dieser Ausgabe beiliegenden FORTH-System (mForth.tos) etwas experimentieren. Auch einem FORTH-Kurs stünde dann in einer der nächsten Ausgaben der ATOS nichts im Wege.

RS