Maxime Devos schreef op za 26-03-2022 om 20:21 [+0100]: > (define-syntax use-module/lexical >   ;; todo: integrate into (use-modules ...)? >   (lambda (s) >     (syntax-case s () >       ((_ foo) >        (let* ((module-name (syntax->datum #'foo)) >               (interface (resolve-interface module-name))) >          (define (binding->import name variable) >            (define name-syntax (datum->syntax s name)) >            #`(define-syntax #,name-syntax (identifier-syntax (@ foo > #,(datum->syntax #'irrelevant name))))) >          #`(begin #,@(module-map binding->import interface))))))) This probably does not interact perfectly with 'syntax-parameterize', 'bound-identifier=?'/'free-identifier=?' and 'syntax-local-binding', though I guess it is good enough for most practical purposes. Greetings, MAxime.