[racket] extracting "docstrings" from documentation

From: Sam Tobin-Hochstadt (samth at ccs.neu.edu)
Date: Mon Dec 19 15:47:03 EST 2011

On Mon, Dec 19, 2011 at 3:37 PM, Robby Findler
<robby at eecs.northwestern.edu> wrote:
> What is the usecase for this information? Giving people quick access
> to docs in the REPL?

I would personally want it for tooltips etc in DrRacket, and also when
autocompleting identifiers.  This is present in lots of existing IDEs
such as VS, Eclipse, etc.  This video of Clojure in Emacs demos
something like that: http://vimeo.com/22798433 , which I think we
could definitely have in DrRacket.

> Robby
> On Mon, Dec 19, 2011 at 2:26 PM, Matthew Flatt <mflatt at cs.utah.edu> wrote:
>> I don't know that anything better is available right now, but maybe the
>> question should be: What should Scribble provide?
>> Originally, I had in mind including docstring-like information in the
>> cross-reference output of a Scribble document. That approach would work
>> badly with the current implementation of cross-reference information,
>> however, because the information already takes too much memory. (On a
>> 32-bit machine, around 20MB of DrRacket's initial footprint is
>> cross-reference information for installed documentation, and that cost
>> doubles when online check syntax is enabled.) Probably cross-reference
>> information should actually be in a database, instead of a serialized
>> hash table, but I haven't yet tried anything in that direction.
>> Any other ideas?
>> At Mon, 19 Dec 2011 14:42:07 -0500, Danny Yoo wrote:
>>> I'm trying to extract documentation strings for all the functions in
>>> racket/base.  By documentation strings, I truly mean strings.  Here's
>>> the progress I'm making on this:
>>>     https://github.com/dyoo/extract-docstring
>>> It's buggy still, and I'm working out the kinks.
>>> The process I'm using to approach this is frankly a little insane, and
>>> I would rather not go to the nuthouse for this.  I'm using setup/xref
>>> and scribble/xref to figure out the source line and anchor of a
>>> binding.  Next, I parse the HTML, grab at the element with the given
>>> anchor name, and start sucking up HTML till I hit the next anchor.
>>> I am web-scraping, and I know I should be ashamed of myself.  But I do
>>> not see any other mechanisms available to me at the moment.  Have I
>>> missed something obvious?
>> _________________________________________________
>>  For list-related administrative tasks:
>>  http://lists.racket-lang.org/listinfo/users
> _________________________________________________
>  For list-related administrative tasks:
>  http://lists.racket-lang.org/listinfo/users

sam th
samth at ccs.neu.edu

Posted on the users mailing list.