On Fri, Sep 10, 2010 at 5:39 PM, Ryan Culpepper <ry...@ccs.neu.edu> wrote: > On 09/10/2010 04:04 PM, John Clements wrote: >> >> On Sep 10, 2010, at 1:48 PM, Ryan Culpepper wrote: >> >>> The way the rackunit tool does it (to make the rackunit gui >>> DrRacket-aware) is to attach a module into the user namespace on every >>> execution by overriding the 'reset-console' method of drracket:rep:text%. >>> See rackunit/tool.rkt for the code. >>> >>> Then you can have a module/teachpack that just requires the attached >>> module. >> >> Good Gravy! It would have taken me *weeks* to figure that out. Especially >> the bit about making the shared link module written in the #%kernel >> language. Yikes! > > I think it did take weeks, plus a few conversations with Robby, to get that > bit of code right. (Although part of that was about threads and > eventspaces.) > > Using the #%kernel language for the shared moduel is probably overkill, > since IIUC DrRacket already attaches other modules to make classes and guis > work. > > Robby: What modules currently get attached by DrRacket?
(list 'mzscheme '(lib "mzlib/foreign.rkt") '(lib "mred/mred.rkt") '(lib "mrlib/cache-image-snip.rkt") '(lib "mrlib/image-core.rkt") '(lib "mrlib/matrix-snip.rkt") '(lib "mzlib/pconvert-prop.rkt") '(lib "planet/terse-info.rkt")) and possibly more that tools attach. But keeping this list fairly small is important. For example, the matrix-snip.rkt file used to be written in "#lang racket" which caused problems. Robby _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev