我现在正在学习Emacs Lisp,参考手册是reference manual,同时也在从一本LISP书中学习Common Lisp。
来自Common Lisp书籍。
来自Common Lisp书籍。
>> (setf power-of-two
(let ((previous-power-of-two 1))
#'(lambda ()
(setf previous-power-of-two
(* previous-power-of-two 2)))))
>> (funcall power-of-two)
2
>> (funcall power-of-two)
4
>> (funcall power-of-two)
8
由于Emacs Lisp的动态绑定行为,该函数无法正常工作。
我想知道是否有可能在不引入全局变量的情况下在Emacs Lisp中实现同样的功能?