why is: (load "t1.scm") (define x 20) valid, where as: (define-macro (foo) (load "t1.scm") (define x 20)) result in a ill-placed define error? I was under the impression that scheme define-macro was just scheme code; it appears that the environment the macro is run in is different from the runtime ones? Thanks!