is there anyway i can obtain dynamic scoping in gambit? lexically scoping is really cool, and I want it as the default behavior; i just want the ability to go:

(define (foo x) (* x 2))

(define (g x) (foo x))

(pp (list (g 1) (dynamic-let ( (foo (lambda (x) (* x 3)))) (g 1))))

to get me:

(2 3)