8

I am a college student at a school that teaches mainly in Java. One of the strong points of Java, which I quite enjoy, is the large collection of libraries. What makes these libraries especially useful is the extensive documentation and organization presented via JavaDoc. Are there any library collections for Common Lisp which also have these qualities, and is there a tool similar to JavaDoc which would assist in the building, maintaining, or expanding of these libraries?

Pablo Fernandez
  • 279,434
  • 135
  • 377
  • 622
Zoe Gagnon
  • 694
  • 6
  • 9
  • Note: I've looked through Github, Sourceforge, and CLiki, and none of these have what I'm looking for. Rather than a random assortment of libraries with no documentation or organization standards, I'm looking for something akin to a library of libraries. – Zoe Gagnon Oct 10 '08 at 18:54
  • 1
    This is probably off-topic, since it's asking for an off-site resource, but these days many people are using [Quicklisp](http://www.quicklisp.org/). – Joshua Taylor Sep 23 '13 at 18:46

9 Answers9

6

Yes there are extensive, documented library collections at http://www.cl-user.net, http://www.cliki.net and http://clocc.sourceforge.net. As well as advanced 'asdf' or 'mk-defsystem' base infrastructures to use them.

fincomus
  • 246
  • 2
  • 4
5

No, there is no comprehensive, consistently documented library collection. The inexistence of such a thing is Common Lisp's biggest problem right now. If you're interested in helping the Lisp community, this may well be the thing to attack first.

Also, while there are various JavaDoc equivalents, there is no widely accepted quasi-standard as for Java.

Matthias Benkard
  • 15,497
  • 4
  • 39
  • 47
  • Downvoters: I'd appreciate if you could comment briefly on what you found unhelpful about my answer, so that I can do better next time. Thank you. – Matthias Benkard Oct 18 '08 at 17:40
3

Now there is quicklisp and it made everything so much easier! http://www.quicklisp.org/

whoplisp
  • 2,508
  • 16
  • 19
  • I'd also like to point out quickdocs.org, which organizes the documentation for all of the libraries in quicklisp. – djeis Mar 15 '17 at 18:51
2

Github contains a lot of lisp projects, not to mention Sourceforge

dsm
  • 10,263
  • 1
  • 38
  • 72
2

Try cliki or common-lisp.net.

As to javadoc...you know about docstrings? If not, find out. Also find out about all the other self-documenting features.

It sounds like you haven't read the spec. Always read the spec, whatever you are doing.

Marcin
  • 48,559
  • 18
  • 128
  • 201
  • I started reading the specs related to posting a comment here, but after I got through HTTP and TCP/IP, I completely forgot what I was going to say. ;) – J c Oct 17 '08 at 10:19
  • You should have used a macro to do it. – Marcin Oct 17 '08 at 13:49
2

I recommend clbuild, which contains a collection of quality libraries compiled by a group of experienced, discerning lisp programmers (as well as script to download and install those libraries).

If you want guidelines for writing highlevel/api documentation, I suggest you follow the examples set by Edi Weitz and others (e.g., see Hunchentoot, Vecto).

For lower level implementation documentation, I think the built-in docstring mechanism together with Slime's source navigation and autodoc facilities comprise the best existing environment for code exploration.

huaiyuan
  • 26,129
  • 5
  • 57
  • 63
1

Tinna is a Lisp documentation system that is comparable to JavaDoc.

sanxiyn
  • 3,648
  • 1
  • 19
  • 15
1

There are many available libraries for Common Lisp and many of them are thoroughly documented. JavaDoc, in my own experience (or any such tool like Doxygen for C++), is not a valuable tool to document a library but more to document its implementation.

So documentation is not a matter of tools here, but of will of the lib's author to write a decent manual. In this area, Common Lisp is like any other language: there are beautiful pieces of engineering with wonderful documentation, quick and dirty code without the slightest sign of documentation, as well as all possible combinations of code and documentation qualities...

All in all, I personnally found that Common Lisp libraries have a pretty high overall quality.

Nowhere man
  • 5,007
  • 3
  • 28
  • 44
0

If you are used to Java, you may give Clojure a chance and keep using the Java libraries you know.

Pablo Fernandez
  • 279,434
  • 135
  • 377
  • 622