我想获取我在 lisp 会话中创建的所有变量的列表。我认为这应该可以通过查看 common-lisp-user 中的所有符号来实现。但是我怎样才能得到这样的清单呢?
要仅从cl-user您迭代所有绑定符号并do-symbols排除从其他包导入的符号中获取绑定变量:
(let ((external-symbols (mapcan (lambda (pkg)
(let (rez)
(do-symbols (s pkg rez)
(push s rez))))
(package-use-list (find-package 'cl-user)))))
(do-symbols (s 'cl-user)
(when (and (boundp s)
(not (member s external-symbols)))
(print s))))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
283 次 |
| 最近记录: |