3

I'm using Geiser in Emacs on Windows as a Racket programming environment. I'm working on the file "d:/code/racket/foo.rkt". "d:/code/racket/foo.rkt" is a module (it starts with #lang racket).

I can use ,enter "d:/code/racket/foo.rkt" at the Racket REPL to enter the module, and having done so I can successfully execute functions from the file.

However, if I change the file and re-run ,enter "d:/code/racket/foo.rkt", the file is not re-loaded: changes to functions in my file are not reflected when I re-execute them in the REPL.

I have tried re-compiling my buffer with C-c C-k before re-running ,enter, but this makes no difference. I've also tried executing ,enter #f to exit the foo.rkt module, then re-running ,enter "d:/code/racket/foo.rkt"; this still doesn't reload the module.

I've also observed that running (enter! (file "d:/code/racket/foo.rkt")) instead of ,enter "d:/code/racket/foo.rkt" does reload the file.

Is this a known limitation of Geiser's ,enter form, or am I missing a trick?


(Versions are: Geiser 0.5, Emacs 24.3.1, Racket 6.0, Windows 8)

Peter
  • 3,619
  • 3
  • 31
  • 37
  • 1
    I cannot reproduce your problem. It works on my machine (Mac OSX). There is also the command to switch to the repl and eval the module (C-c C-a) It even reloads the definition if I only do a "Eval definition and go" – DanEEStar May 29 '14 at 15:38
  • This is happening to me as well on arch linux. As a workaround, using [racket-mode](https://github.com/greghendershott/racket-mode), `racket-run` will accordingly re-run the module. – nymo Jul 08 '14 at 17:17

0 Answers0