Para implementar reposição da sucessão de Fibonacci, é necessário que haja acesso às variáveis de estado do processo. Isto implica que a função repoe-fib tem de estar definida no mesmo âmbito léxico da função gera-fib.
(let ((ultimo 1) (penultimo 0)) (defun repoe-fib () (setq ultimo 1 penultimo 0)) (defun gera-fib () (let ((novo (+ ultimo penultimo))) (setq penultimo ultimo ultimo novo) novo)))> (gera-fib) 1 > (gera-fib) 2 > (repoe-fib) 0 > (gera-fib) 1