**''DOLIST''** Classic LISP list iteration macro, implemented as special form in LabLISP. Expects at least one argument, which must be properly formed list: First element is a plain symbol, which will be the iterator variable. Second element must evaluate to proper list. There might be optional third element, the result form - single expression which will be evaluated after the looping is finished. If there is no result expression, the ''DOLIST'' form returns ''NIL''. After the initializer list, there can be any number of expressions (implicit ''PROGN''), which will be evaluated repeatedly in loop. >(dolist (x '(a b c) T) (print x)) ; X will be bound to elements of the list A B C T ; result form Note that the optional result form is evaluated in the context where the iterator symbol is still defined, but has ''NIL'' value. See also: ''DOTIMES'', ''RETURN''