Next: Transformation der Grammatik Up: Pro2Lisp: Reader für Previous: Pro2Lisp: Reader für

Die Schnittstelle

Es werden vier Prozeduren exportiert.

pro-read-data-base filename[Function]

Nimmt an, daß die durch filename bezeichnete Datei Klauseln enthält. Liefert eine Liste der Klauseln in abstrakter Syntax. Sollte nur eine Klausel vorhanden sein, wird eine einelementige Liste zurückgegeben. Eine leere Datei erzeugt eine Fehlermeldung.

pro-read-goal string[Function]

Liest ein Ziel aus string. Das Ziel darf nicht mit einem Punkt enden. Liefert eine Liste, deren Elemente die Faktoren des Ziels sind.

pro-read-clause string[Function]

Liest eine Klausel aus string. Liefert die äquivalente Form in abstrakter Syntax. Das Ergebnis ist eine Liste, deren erstes Element ein Tag (hn oder ft) ist.

pro-split-input string[Function]

Liefert ein Paar. Über den Aufbau entscheidet das erste Token von string: Steht dort ein Symbol, so wird es an die erste Position des Paares geschrieben. Das zweite Element besteht aus dem Rest der Eingabe als String, beginnend beim ersten non-whitespace nach dem Symbol. Andernfalls wird die erste Position mit nil und die zweite mit dem leeren String besetzt. Die Funktion wird für die Behandlung von Relfun-Kommandos gebraucht.

Tritt in der Eingabe ein Fehler auf, so wird eine Fehlermeldung ausgegeben und der Wert nil zurückgeliefert.


Harold Boley & Michael Herfert (herfert@dfki.uni-kl.de)