LISP - Construcción de bucle

los loopLa construcción es la forma más simple de iteración proporcionada por LISP. En su forma más simple, le permite ejecutar algunas declaraciones repetidamente hasta que encuentre unareturn declaración.

Tiene la siguiente sintaxis:

(loop (s-expressions))

Ejemplo

Cree un nuevo archivo de código fuente llamado main.lisp y escriba el siguiente código en él.

(setq a 10)
(loop 
   (setq a (+ a 1))
   (write a)
   (terpri)
   (when (> a 17) (return a))
)

Cuando ejecuta el código, devuelve el siguiente resultado:

11
12
13
14
15
16
17
18

Tenga en cuenta que sin la declaración de retorno, la macro de bucle produciría un bucle infinito.