I think the main problem is that `make-evaluator` is a function, which means that it doesn't know what module it's called in. So, relative paths like 'sub or (submod "." 'sub) don't work.
You could use `quote-module-path` from `syntax/location` like this: #lang racket (require racket/sandbox syntax/location) (module* sub racket (provide foo) (define foo "foo")) (make-evaluator 'racket #:requires (list (quote-module-path sub))) This can work because the `quote-module-path` form expands to an expression at compile time that identifies the enclosing module at run time. At Fri, 29 Jan 2021 21:29:49 -0800 (PST), Vincent Lee wrote: > > Hi all, > > I'm trying to create a sandbox to which I expose a limited set of functions > and values from the outside. So far I have this: > > #lang racket > > (require racket/sandbox) > > (module* sub racket > (provide foo) > (define foo "foo")) > > However if I now run > > (make-evaluator 'racket #:requires 'sub) > > I get an error. I also get an error if I try > > (make-evaluator 'racket #:requires (submod "." 'sub)) > > I expect this to work and for `foo` to be available in the sandbox. > > A normal `(require 'sub)` works fine, but according to the docs #:requires > takes the exact same form arguments as `require`, so I'm not sure what I'm > missing. > > Alternatively, what's the cleanest way to achieve my goal of providing a > fixed set of functions and variables into a sandbox? > > Thanks in advance. > > -- > You received this message because you are subscribed to the Google Groups > "Racket Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email > to racket-users+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/racket-users/53fc8114-3348-4d7b-b915-cb37dac1b > d25n%40googlegroups.com. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/20210130080711.54%40sirmail.smtps.cs.utah.edu.