我是一所主要用 Java 教授的学校的大学生。我非常喜欢 Java 的优势之一,就是大量的库集合。使这些库特别有用的是通过 JavaDoc 提供的大量文档和组织。是否有任何具有这些特性的 Common Lisp 库集合,是否有类似于 JavaDoc 的工具可以帮助构建、维护或扩展这些库?
9 回答
是的,在http://www.cl-user.net、 http://www.cliki.net和http://clocc.sourceforge.net上有大量记录在案的图书馆收藏。以及使用它们的高级“asdf”或“mk-defsystem”基础设施。
不,没有全面的、一致记录的图书馆收藏。不存在这样的东西是 Common Lisp 目前最大的问题。如果你有兴趣帮助 Lisp 社区,这很可能是首先要攻击的东西。
此外,虽然有各种 JavaDoc 等价物,但没有被广泛接受的 Java 准标准。
现在有了 quicklisp,它让一切变得如此简单! http://www.quicklisp.org/
Github包含很多 lisp 项目,更不用说Sourceforge
试试 cliki 或 common-lisp.net。
至于 javadoc……你知道 docstrings 吗?如果没有,找出来。还可以了解所有其他自记录功能。
听起来你还没有阅读规范。无论您在做什么,请务必阅读规范。
我推荐clbuild,它包含一组由经验丰富、有眼光的 lisp 程序员编译的高质量库(以及下载和安装这些库的脚本)。
如果您想要编写高级/api 文档的指南,我建议您遵循 Edi Weitz 和其他人设置的示例(例如,请参阅Hunchentoot、Vecto)。
对于较低级别的实现文档,我认为内置的文档字符串机制以及Slime的源导航和自动文档工具构成了代码探索的最佳现有环境。
Tinna是一个可与 JavaDoc 相媲美的 Lisp 文档系统。
Common Lisp 有许多可用的库,其中许多都有完整的文档记录。JavaDoc,以我自己的经验(或任何此类工具,如用于 C++ 的 Doxygen),不是记录库的有价值的工具,而是记录其实现的更多工具。
所以文档不是这里的工具问题,而是lib作者编写体面手册的意愿。在这个领域,Common Lisp 就像任何其他语言一样:有漂亮的工程和精彩的文档,快速而肮脏的代码,没有丝毫的文档迹象,以及代码和文档质量的所有可能组合......
总而言之,我个人发现 Common Lisp 库的整体质量相当高。
如果你习惯了 Java,你可以给Clojure一个机会,继续使用你知道的 Java 库。