[racket] Submodule reloaded when entering file module

From: Diogo F. S. Ramos (diogofsr at gmail.com)
Date: Tue Jun 25 05:48:28 EDT 2013

When entering a file from a submodule inside this file, the submodule
seems to be evaluated again. Is this the intended behavior?

Here are the steps to reproduce it:

1. Create a file with a submodule inside it
2. Enter file
3. Enter submodule
4. Change the file and save it
5. Enter the file

Here is a example program:

#lang racket/base

(module my-submodule racket/base
  (displayln "inside my-submodule"))

And here is the interaction with this file:

$ racket
Welcome to Racket v5.3.4.
> (enter! "foo.rkt")
> (enter! (submod "foo.rkt" my-submodule))
inside my-submodule
> (enter! "foo.rkt")
  [re-loading /tmp/foo.rkt]
inside my-submodule
> 

As one can see, the message "inside my-submodule" is printed again when
entering "foo.rkt".

Posted on the users mailing list.