[plt-scheme] Some sort of documentation tool from the toplevel?
On Mon, 4 Jul 2005, [ISO-8859-1] Jens Axel Søgaard wrote:
> > I took a brief glance at what Help Desk provides, and it looks neat,
> > but unless I'm mistaken, several of its components require MrEd to be
> > up and running; I'd like to have something that can be run off the
> > toplevel, so that I can get documentation if I'm running through
> > Emacs. I'm also only interested in the mzscheme primitives at the
> > moment.
>
> Have you looked at Neil van Dyke's Quack? I know that it allows access
> to the PLT documentation from within Emacs - precisely which funcinality
> is included eludes me, I normally use DrScheme.
Hi Jens,
Yes, I'm using the excellent Quack system in Emacs, and it has a
convenient menubar to pick out documentation. But unfortunately, its
documentation system invokes the web browser, and that's a bit too
heavyweight for me. I have to admit that I'm looking for an analogue to
Python's 'pydoc' system, and I can't find it in MzScheme yet, and that's
what's motivating me right now.
I did read through the PLT mail archives, and saw that there was a
proposal to introspect documentation out of functions:
http://www.cs.utah.edu/plt/mailarch/plt-scheme-2000/msg00014.html
But the consensus at that time seemed to be "Don't use docstrings: use
contracts instead." So I am reading about contracts now. My problem,
again, is ignorance: the material in the reference manual is very dense,
and I have the sinking feeling that I'll need to read the paper "Contracts
for Higher-Order Functions" because the assumptions and terminology used
in the Reference Manual baffle me. Oh well; I don't mind: it's a good
weekend for reading. *grin*
In any case, contracts appear to talk about domain/range information, but
I'd like things like the short notes and informal commentary that is
available from the reference manual. I do like knowing type information,
but I'd also like the human-centric documentation too, and in a form
that's quickly accessible from the interactive interpreter.
Thanks for your help!