ICFP’09,August 31–September 2, 2009, Edinburgh, Scotland, UK.



Scribble: Closing the Book on Ad Hoc Documentation Tools

Matthew FlattUniversity of Utah and PLTmflatt@cs.utah.edu

Eli BarzilayNortheastern University and PLTeli@ccs.neu.edu

Robert Bruce FindlerNorthwestern University and PLTrobby@eecs.northwestern.edu

Scribble is a system for writing library documentation, user guides, and tutorials. It builds on PLT Scheme’s technology for language extension, and at its heart is a new approach to connecting prose references with library bindings. Besides the base system, we have built Scribble libraries for JavaDoc-style API documentation, literate programming, and conference papers. We have used Scribble to produce thousands of pages of documentation for PLT Scheme; the new documentation is more complete, more accessible, and better organized, thanks in large part to Scribble’s flexibility and the ease with which we cross-reference information across levels. This paper reports on the use of Scribble and on its design as both an extension and an extensible part of PLT Scheme.

I.7.2Document and Text ProcessingDocument PreparationLanguages and systems Design, Documentation, Languages