map
functionsThe dolist
macro is
mapc
function,
as it expands to while
with inlined BODY
lamda
indirection:
(macroexpand '(dolist (x '(10 20 30)) (* x 2)))
(let ((tail '(10 20 30))) (while tail (let ((x (car tail))) (* x 2) (setq tail (cdr tail)))))