At Tue, 15 May 2012 10:49:20 -0400, Matthias Felleisen wrote:
> ISSUE 1: I am disturbed that submodule b is evaluated before submodule a. 

I've long resisted defining the order in which `require'd modules are
instantiated, but let's try it. I'll push a change so that
instantiation of a module instantiates its `require'd modules in the
order in which they are `require'd.

(Surprising to me, the only thing that I saw break with this change was
a test in the module test suite.)

Keep in mind that relying on the instantiation order is still generally
a bad idea. Also, `require'd modules are still instantiated before the
module body expressions are evaluated (and I don't think we should try
to change that), so running

 #lang racket

 (module one racket/base 1)
 (module three racket/base 3)

 (require 'one)
 2
 (require 'three)

prints 1, 3, 2, not 1, 2, 3.

____________________
  Racket Users list:
  http://lists.racket-lang.org/users

Reply via email to