a) Anweisung zur Einführung einer benutzerdefinierten Prozedur.
b) c) Aufrufen einer benutzerdefinierten Prozedur
Syntax: a)
DEF PROCproz-Teil
b)
PROCproz-Teil
c)
ON Ausdruck PROCproz1 [,
PROCproz2Œ] [
ELSE Anweisung]
Argument: a)
proz-Teil hat die Form
Bezeichner[
(Parameter-Liste)]. Es gibt den Namen der Prozedur (
Bezeichner) und die Namen und Typen der wahlweisen Parameter, die in Klammern gesetzt und mit Komma voneinander abgegrenzt werden müssen.
b) Die zweite Form wird beim effektiven Aufruf der Prozedur verwendet. Diesmal enthält die Parameterliste Ausdrücke von Typen, die den in der
DEF PROC Anweisung erklärten Parametern entsprechen. Die Ausdrücke werden ausgewertet und (lokal) den Parametervariablen zugewiesen. Die Kontrolle wird nach ausführung von
ENDPROC an das aufrufende Programm zurückgegeben.
c)
Ausdruck sollte eine Ganzzahl ergeben. Wenn diese Integerzahl
n ist, dann wird die
nte aufgelistete Prozedur aufgerufen. Wenn die Integerzahl kleiner als 1 oder größer als die Menge der (aufgelisteten) Prozeduren ist, dann gelangt die Anweisung nach
ELSE zur Ausführung, vorrausgesetzt es gibt eine solche.
Beispiele:
DEF PROCdelay(n)
TIME=0 : REPEAT UNTIL TIME=n*100 : ENDPROC
IF ?flag=0 THEN REPEAT PROCdelay(0.1) : UNTIL ?flag