END

Esta palabra reservada marca el final de una de las siguientes sentencias:

  BEGIN
  IF
  WHILE
  SWITCH
  CASE
  DEFAULT
  FOR
  FROM
  LOOP
  CLONE

Es decir, la función de la palabra END es delimitar dónde acaba una sentencia.

Se debe tener en cuenta que las sentencias se pueden anidar, es decir, incluir unas dentro de otras, por lo que si no se estructura bien un programa (tabulando el código), puede resultar difícil averiguar a qué sentencia corresponde cada END.

Por ejemplo, en el siguiente código se puede ver claramente a qué sentencia pertenece cada END.

BEGIN
    IF (x>0)
        x=x-1;
    END
END

Pero este mismo código podría haberse expresado como sigue:

BEGIN
    IF (x>0)
    x=x-1;
END
    END

resultando mucho más complicada la lectura del programa, aunque para el compilador del lenguaje ambos bloques de código son exactamente iguales (el compilador seguirá interpretando que el primer END es el de la sentencia IF y el segundo el del BEGIN, aunque éstos estén tabulados incorrectamente).


Ver: Sintaxis