On peut terminer la boucle explicitement avec une clause while ou une clause until. La seule différence entre les deux est que si la valeur de l'expression du while est vrai, alors la boucle continue, alors que si la valeur de l'expression du until est vrai, alors la boucle termine. Exemples :
* (loop for i in '(4 6 8 2 3 5 4 7)
while (evenp i)
sum i)
20
* (loop for i in '(4 6 8 2 3 5 4 7)
until (< i 3)
sum i)
18
*
Les trois clauses, always, never et thereis jouent un rôle similaire, mais elles ne seront pas présentées ici.