On Sun, Jan 15, 2012 at 5:00 PM, John Clements <cleme...@brinckerhoff.org> wrote: > > On Jan 14, 2012, at 8:19 PM, Robby Findler wrote: > >> Perhaps the right thing is to have the setup code export a small >> library that contains a "is my mark bound in the context" function and >> then the sandbox can call that function when deciding whether or not >> to grant permission. >> >> (That has the dependencies going the right way, right?) >> >> It doesn't get us really any steps closer to the more general solution >> but perhaps it is enough for this discussion to end? > > Attempting clarification and summary: > > The access violation is caused indirectly by a call to > variable-name->module-source (sp?), and the offending call to "exists?" is > located in main-collects.rkt, which ought to be entitled to check whether > files exist. > > (It's not clear to me while main-collects needs to check this, but I'm not > going to worry about this.) > > The short-term solution is simply to disable the contract wrapper on > print-only-errors... and presumably on the other parameters? I'm in the dark > still about which kinds of contracts and/or contract uses trigger the > offending use of variable-name->module-source (sp).
I'm not sure either (this is certainly not the only contract that's checked during the execution of PLAI programs, but maybe it's the only provide/contract one?), but once I disabled that, my sample solution for the next exercise went through. It would be good to know how to get a better short-term solution, however (like making a more relaxed sandbox that allows exists queries in the handin server). Robby ____________________ Racket Users list: http://lists.racket-lang.org/users