A common complaint with Lisp's traditional looping constructs was
that they were either too simple and limited, such as
while, or too unreadable and obscure, like Common Lisp's
To remedy this, Common Lisp added a construct called the “Loop
Facility” or “
loop macro”, with an easy-to-use but very
powerful and expressive syntax.