Forth:Zero

Aus Wikibooks


Zunächst wollen wir unsere Referenz Forth Software Entwicklungsumgebung (SEU oder SDE) definieren.

Hardware[Bearbeiten]

Forth tritt mit dem Ziel an auch auf geringen Hardwareressourcen lauffähig zu sein und dabei systemnahe Entwicklung zuzulassen. Als Hardware benutzen wir daher einen Raspberry Pi Zero mit WLAN und HAT. Dies ist ein Kompromiss eines überschaubar kleinem/großen System und ermöglicht uns Hardware direkt anzusteuern. Ein USB-Kabel mit Schalter ist hierbei empfehlenswert.

Optional Konfiguration Wir können direkt auf dem Raspberry entwickeln, es ist aber durchaus praktisch per SSH (Windows Nutzer z.B. mit Putty) den Rechner zu steuern. Hierzu aktivieren wir SSH. Der Start im Command Line Modus (CLI) ist für unsere Zwecke ausreichend. Wer lieber über die Grafische Oberfläche auf dem Raspberry Pi arbeiten möchte, öffnet die Terminal Anwendung. Statt dem Nutzer Pi arbeiten wir mit einem neu eingerichteten Nutzer forth, der analoge Rechte zum Anwender pi hat. Als Shell nutzen wir zsh. Jede andere Shell kann aber auch von dir allerdings ebenso verwendet werden wie der Nutzer Pi.

Software[Bearbeiten]

Für unser Raspberry System werden gleich drei Forth Systeme angeboten. Später werden wir Hintergründe verstehen, jetzt solltest du nur soviel dir merken: Gehe nie davon aus, dass ein Programm was in einem Forth System läuft auch in einem Anderen funktioniert. Wir installieren die verfügbaren Systeme nachfolgend.

zsh -k
# ( Wir installieren zunächst mit APT die angebotenen Forth Systeme )
forth@pi0wh:~> sudo apt install gforth pforth yforth
Installation von gforth, pforth und yforth mit apt

Anschließend erfolgt eine längere Ausgabe zum Installationsfortschritt.

zsh -k
# ( Anschließend vergewissern wir uns, dass die Forth Systeme erfolgreich installiert sind )
# ( Wir rufen die Forth Systeme in der Shell auf und geben daraufhin    BYE   zum beenden ein )
forth@pi0wh:~> pforth 
bye
forth@pi0wh:~> gforth
bye
forth@pi0wh:~> yforth
bye
# ( Wir haben hier nur die Eingaben dargestellt )
# ( Die Screenshots zeigen eine beispielhafte Ausgabe )
Prüfen der erfolgreichen Forth Installation für pforth, gforth und yforth

Das Forth System startest du hier im Interpreter Modus. In deinem Forth System hast du dabei bereits ein erstes Programm(chen) programmiert, welches ganz konkret eine "Funktion" mit dem Namen bye aufruft. Unsere drei Forth Systeme kennen diese "Funktion" und wissen, dass sie die Kontrolle an unsere Shell wieder zurückgeben sollen. Anm. Der Begriff "Funktion" ist im Forth Umfeld nicht gebräuchlich, wir werden uns in den folgenden Kapiteln mit der korrekten Begrifflichkeit beschäftigen.

Anhand des Screenshots kannst du eine Beispielausgabe für alle drei Forth Systeme erkennen.

Rückblick[Bearbeiten]

Was hast du jetzt erreicht:

  1. Du hast nun ein funktionierendes Forth System auf deinem Rechner installiert.
  2. Du kannst das Forth System im Interpretermodus gestartet und
  3. Du kannst dein Forth System korrekt beenden.


Kontrollaufgaben[Bearbeiten]

  1. Aufgabe "Weitere Funktionen 1": Starte einen deiner Interpreter und gebe ein:
    CR CR CR CR CR CR CR CR CR CR bye
    
    Was siehst du?
  2. Aufgabe "Weitere Funktionen 2": Führe Aufgabe 1 durch aber drehe die Reihenfolge um in:
    bye CR CR CR CR CR CR CR CR CR CR
    
    Wie ändert sich deine Ausgabe?
  3. Aufgabe "Hilfeseiten": Rufe in der Shell die Hilfeseiten zu deinem Forth System auf und lese was passiert, wenn du
    zsh -k
    # ( Hilfeseiten werden mit man <name> aufgerufen und mit 'q' beendet )
    forth@pi0wh:~> gforth -e bye
    
    eingibst.
    zsh -k
    # ( Hilfeseiten werden mit man <name> aufgerufen und mit 'q' beendet )
    forth@pi0wh:~> man gforth
    forth@pi0wh:~> man pforth 
    forth@pi0wh:~> man yforth
    
    Wie kannst du gleiches Verhalten mit pforth und yforth erreichen?


Ergänzungen[Bearbeiten]

Die Installationen von Forth unter Linux unterscheiden sich je nach Distributor. Während Debian und damit Raspbian aktuell auf apt aufsetzen, kann auch rpm, pkg, apk, zypper notwendig sein. Ggf. musst du auf den Hilfeseiten deines Linux nachschauen.

Sollte dir kein Forth-System von deinem Hersteller bereitgestellt werden, musst du das Forth-System aus dem Quelltext erstellen.