[racket-dev] , en and enter! sometimes do nothing, and it's changing over releases?
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 <mwilber at 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 at slideshow/pict> (circle 10)
> (a circle appears in the REPL)
>
>
> Ray Racine <ray.racine at 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
> > <greghendershott at 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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/dev/archive/attachments/20130209/4ea3a509/attachment.html>