[racket] Exploratory programming?
>
> On Dec 1, 2010, at 1:20 AM, Eli Barzilay wrote:
>
>>>
>>> Examples: comparing Python's help function to Racket's as a tool for
>>> introspecting objects at the REPL
>>> [...]
>>>> (define (f x y)
>>> (+ x y))
>>>> (help f)
>>> Not found in any library's documentation: f
>>
>> This is because you didn't document it.
Yes, right. This was perhaps not the best illustration. I don't think it
would be terribly useful to read documentation (per se) about functions
defined at the REPL. I meant to illustrate that calling help on a
procedure object in Python gives you a certain amount of information
(regardless of whether the author has documented it or not), including the
module it is defined in and its required and optional arguments. Is there
a way to get this kind of information in Racket at the REPL, regardless of
whether or not the author has been scrupulous in documenting her work?
> I wonder whether help could display contracts if the module use
> provide/contract to export f.
This is exactly the kind of thing I would find useful. Or perhaps I
should say: it is the kind of thing I have found useful in the past. The
spirit of my original question was meant to be: given that I found this
useful in the past, what's the right way of translating that experience to
programming in Racket? Should I be looking for a way to do similar things
in Racket, or should I be revising the way I think about and use the
documentation system? It seems like the answer is, "both."
Best,
Richard