As I play with that example I see that changing #'(let () ...) to #'(begin ...) fixes the issue. Unfortunately in my actual program I can't do that. Here is an example more akin to the context I'm working in, where that fix doesn't work:<br><br><div>#lang racket</div><div>(provide a)</div><div>(define a 1)</div><div><br></div><div>;; make the submodule</div><div>(define-syntax (mod stx)</div><div>  #'(module* R racket</div><div>      (require (submod ".." T))</div><div>      (test-binding (submod ".."))))</div><div><br></div><div>;; defines the requiring macro</div><div>(module T racket </div><div>        (provide test-binding)</div><div>        (require (for-syntax syntax/parse))</div><div>        (define-syntax (test-binding stx)</div><div>          (syntax-parse stx</div><div>            [(_ path)</div><div>             #'(begin (require path) a)])))<br>;; go</div><div>(mod)</div><br><div class="gmail_quote">On Thu Nov 06 2014 at 3:09:28 PM Spencer Florence <<a href="mailto:spencer@florence.io">spencer@florence.io</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi All,<br><br>I've been struggling to have a macro be given a path then require something from that path. The following code produces and "Unbound Identifier" error, although I would expect it to evaluate to 1. Could someone provide insight into what is going on?<br><br><div>#lang racket/load</div><div>;;provider</div><div>(module T racket</div><div>  (provide a)</div><div>  (define a 1))</div><div>;; requirer</div><div>(module R racket</div><div>  (require (for-syntax syntax/parse))</div><div>  (define-syntax (test-binding stx)</div><div>    (syntax-parse stx</div><div>      [(_ path)</div><div>       #'(let () (local-require (only-in path a)) a)]))</div><div>  (test-binding 'T))</div><div>;; go</div><div>(require 'R)<br><br><br>P.S. I attempted to do this with `dynamic-require,` but that failed because in my actual program `path` is sometimes `(submod "..")`, which caused an error about not having a base path.<br></div><br></blockquote></div>