Расширить ответ Леппи: если вы написали
(let ((x 2) (y 3))
(let* ((x 7)
(z (+ x y)))
(* z x)))
вы получите ответ, который ожидали. Внутренний let*
в точности эквивалентен
(let ((x 7))
(let ((z (+ x y)))
(* z x)))
и фактически может быть реализовано таким образом в некоторых схемах.
Другими словами, в форме let*
каждая последующая привязка после первой находится в области действия всех ранее созданных привязок.