Thanks, I think this is the commit log in Geiser on the topic. Racket: fix for module evaluation/entering
Our module loader is receiving load requests for module names represented as lists that are not exactly a submodule, in the sense that the path does not represent an actual file. This phenomenon happens for instance when specifying a reader in a #lang tag. E.g. #lang at-exp racket will cause the loader to be called with module name '(main reader) and path <cols-path>/at-exp/main.rkt, where main.rkt does not exist. Afterwards, we see a call to load at-exp/lang/reader/rkt, with name reader, which is the real code. So, for now, i'm skipping all load requests with a list name, forwarding them to racket's default loader. On Sat, Feb 9, 2013 at 2:30 PM, Michael Wilber <mwil...@uccs.edu> wrote: > Is this related to the enter bug? > > $ racket > Welcome to Racket v5.3.2.3. > > (enter! slideshow/pict) > define-values: assignment disallowed; > cannot re-define a constant > constant: invoke-unit/core > in module: "/home/michael/local/racket/collects/racket/unit.rkt" > context...: > /home/michael/local/racket/collects/racket/unit.rkt: [running body] > standard-module-name-resolver > /home/michael/local/racket/collects/mzlib/unit.rkt: [traversing imports] > /home/michael/local/racket/collects/texpict/mrpict.rkt: [traversing > imports] > /home/michael/local/racket/collects/slideshow/pict.rkt: [traversing > imports] > /home/michael/local/racket/collects/racket/enter.rkt:51:0: enter-require > /home/michael/local/racket/collects/racket/enter.rkt:33:0: do-enter! > > It, and similar issues, bit geiser too. For a time, Geiser would give > similar problems even when simply evaluating (require slideshow/pict): > > http://bugs.racket-lang.org/query/?cmd=view%20audit-trail&database=default&pr=13096 > > I'm not sure how, but Geiser recently implemented some workaround in one > of their recently released versions: > > M-x run-racket > > Welcome to Racket v5.3.2.3. > racket@> ,enter slideshow/pict > racket@slideshow/pict> (circle 10) > (a circle appears in the REPL) > > > Ray Racine <ray.rac...@gmail.com> writes: > > I've been seeing the same behavior. I think something got broke in > > racket/enter "enter!". I don't think it is a Geiser, XRepl issue other > > then both I believe leverage the racket/enter module. Bit of a pain in > the > > arse bug, nice if someone could look in to it. > > > > Thanks, > > > > Ray > > > > > > On Thu, Feb 7, 2013 at 9:15 AM, Greg Hendershott > > <greghendersh...@gmail.com>wrote: > > > >> Once upon a time, ~5.3, the XREPL ,en command would always reload a > >> file provided the timestamp changed. > >> > >> As a result, I could do something _roughly_ like DrRacket F5 in Emacs: > >> Touch the file and ,en it. The whole file would be evaluated, and I'd > >> have a REPL where I could explore/tweak. > >> > >> But somewhere around ~5.3.1, ,en stopped doing this reliably. > >> Sometimes it would just do nothing, even if the file timestamp had > >> changed (and even if I made some change to the contents, just in case > >> it was doing a checksum or whatever). > >> > >> I thought to try using enter!. And that worked consistently. > >> > >> But somewhere around ~5.3.2, enter! has stopped behaving consistently. > >> > >> Does anyone have any idea would could be going on?? > >> > >> More info/comments: > >> > >> - I normally use XREPL. (require xrepl) is the _only_ thing in my > racketrc. > >> > >> - The above issue happens with or without XREPL. (I tried again today > >> to confirm.) > >> > >> - Although I love the idea of Geiser, I've had it also sometimes not > >> reevaluate (similar issue). Anyway sometimes I just want to strip > >> things down to be simpler; lately I'm in such a phase where I haven't > >> been using it. I might or could use it again someday. > >> > >> - A (related?) issue is that sometimes the first invocation of enter! > >> gives an error like this: > >> > >> > (enter! "client.rkt") > >> module->namespace: module not instantiated in the current namespace > >> name: > >> > #<resolved-module-path:"/Users/greg/src/scheme/collects/lob/example/client.rkt"> > >> context...: > >> /Users/greg/src/plt/racket/collects/racket/enter.rkt:33:0: > do-enter! > >> /Users/greg/src/plt/racket/collects/racket/private/misc.rkt:87:7 > >> > >> But then a second invocation works fine. i.e. Need to do it twice in a > row. > >> _________________________ > >> Racket Developers list: > >> http://lists.racket-lang.org/dev > >> > > _________________________ > > Racket Developers list: > > http://lists.racket-lang.org/dev > _________________________ > Racket Developers list: > http://lists.racket-lang.org/dev >
_________________________ Racket Developers list: http://lists.racket-lang.org/dev