La clause for permet un type d'itération assez général permettant de donner explicitement la première valeur de la variable puis une expression arbitraire pour calculer les valeurs successives. Pour cela, deux mots-clés sont utilisés : = et then. Exemple :
* (loop for i = "hello" then (subseq (reverse i) 1)
repeat 3
do (print i))
"hello"
"lleh"
"ell"
NIL
*