While Let

Syntaxe commune

while x < 5
  print x
  x + 1
/while

Pour incrémenter une variable, Scriptol utilise x + 1.
Cela ne pourrait fonctionner en C et autres langages.

Boucle infinie en C

Les langages C et dérivés (C++, Java, C#) amènent facilement à des boucles infinies. En voici deux exemples.

b>while(x < 5);
{
  printf("%d\n", x);
  x += 1:
}

Peut-être l'avez vous immédiatement noté, (ou peut-être que non!), mais le construct est mauvais, à cause du point-virgule après la condition!

Autre exemple, sans point-virgule mal placé:

while(x < 10)
{
  printf("%d\n", x);
  if(x = 5) continue;
  ... quelques instructions ...
  x += 1;
}

Une fois atteinte la valeur 5 en x, le compteur ne changera plus jamais, parceque l'incrémentation est sautée par l'instruction "continue" et donc la boucle ne finira jamais.

While let

Scriptol utilise une syntaxe sécurisée pour éviter les boucles infirnies:

while x < 10
  print x
  if x = 5 continue
  ... quelques instructions ...
let x + 1

En Scriptol, l'instruction "continue" saute sur l'instruction "let" et la variable de la condition est incrémentée à ce point.