【发布时间】:2014-02-01 19:46:41
【问题描述】:
我知道 Common Lisp REPL 提供的强大功能。我专门使用 SBCL 实现。但是,我不确定我的 REPL 是否设置正确,我想知道如何从 REPL 中获得更多的能量。
例如,我想找到计算机 2^3 = 8 的幂函数。这在许多其他语言中称为 pow 或 power。所以我做了:
CL-USER> (apropos 'pow)
POW
POWER
:OP-POWER-EXT (bound)
:POWERPC (bound)
SB-IMPL::*INTEGER-READER-BASE-POWER* (bound)
SB-IMPL::*POWER-CACHE* (bound)
SB-IMPL::+POWER-CACHE-INTEGER-LENGTH-LIMIT+ (bound)
SB-IMPL::COMPUTE-POWERS
SB-IMPL::POWER
SB-IMPL::POWERS-FOR-BASE (fbound)
SB-INT:POWER-OF-TWO-CEILING (fbound)
SB-KERNEL:%POW (fbound)
SB-KERNEL::POWER
SB-KERNEL:SCRUB-POWER-CACHE (fbound)
; No value
如何查看这些函数的文档?在查看文档之前,我是否必须“导入”这些“库”中的任何一个?我经常发现文档丢失,因为 REPL 会返回 nil. 文档在哪里?例如我做了:
CL-USER> (documentation 'power 'function)
它只是返回了NIL,但从上面apropos 给出的列表中可以看出,power 存在!
总结:
- 如何找到函数、数据类型、变量等的文档...(还有什么要查找的文档?)?
-
SB-IMPL和SB-KERNEL库是否已导入?
感谢大家的帮助!
【问题讨论】:
-
粘液中的一些支持:
C-c C-d C-h列出文档相关功能,例如C-c C-d h在 hyperspec 中查找或C-c C-d d到DESCRIBE
标签: common-lisp read-eval-print-loop sbcl