[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Geiser-users] Manual not showing up while trying to look up symbol
Jose A. Ortega Ruiz
Re: [Geiser-users] Manual not showing up while trying to look up symbol with `racket/base'
Mon, 15 Apr 2013 04:15:31 +0200
Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)
On Mon, Apr 15 2013, Diogo F. S. Ramos wrote:
> 1. Find a file with `#lang racket/base'
> 2. Try to look up a symbol with C-c C-d C-i
> 3. A message appears announcing the look up but nothing shows up
> Example of file:
> #lang racket/base
> (list 42)
> Put the cursor on `list' and press C-c C-d C-i. Only the message in the
> echo area will show up. Even entering the file or changing
> "racket/base" to "racket" will not fix it.
> Now, kill the REPL with C-c C-q, change "racket/base" to "racket", save
> the buffer and open the REPL again with C-c C-z. Now looking up the
> symbol works fine, even changing "racket" to "racket/base" afterwards.
This one is funny. After investigating and using Geiser's logs, the
problem seems to be a bad interaction between errortrace and Racket's
help macro, when one evaluates something in racket/base first thing
after loading errortrace. Loading errortrace install a special
compilation handler, which in turn manipulates namespaces, which is the
cause of the problem (but i don't understand the details). But if one
evaluates anything in the racket namespace initially, things won't
Anyway, i've pushed a fix consisting in ensuring that help is
initialized (in a separate thread, and in the racket namespace) during
the startup, which adds the bonus that the first time one asks for help
there's no delay building the index. This is just a workaround (my
feeling is that there's a deeper bug either in Geiser or in help), but
seems to work for me in Racket 18.104.22.168...
Computers are useless. They can only give you answers.
- Pablo Picasso