Lade...
 

while

while

while

Stack
Stack Position Beschreibung
Stack(In) Top Wert
Stack(Out) Top -

Mit while endet ein mit do begonnener Zyklus. Der Zyklus wird wiederholt (mit der auf do folgenden Anweisung), wenn der Wert auf dem Stack-Top als TRUE aufgefasst werden kann (vergleiche if). Der Befehl while konsumiert, d.h. der Wert auf dem Stack, der als TRUE oder FALSE evaluiert wird, wird vom Stack genommen.

Beispiel:

Das folgende Beispiel summiert die Zahlen 1 bis 10

Var(i, sum)
10 -> i, 0 -> sum
do
  sum i + -> sum
  Decr(i)
  i
while
sum String Attention

Hinweis: Bis einschließlich Version 4.4 hat while nur den FALSE Wert konsumiert, also beim Verlassen der Schleife. Der Wert, der zu TRUE evaluiert wird, blieb auf dem Stack.

Hinweis:  Zyklen können bis zur Tiefe 128 verschachtelt sein. Zyklen sind bis einschließlich Version 4.4 nur innerhalb der Definition neuer Anweisungen erlaubt!