From d61517239da142bafae2d656d82b3af599cac1ee Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Mon, 3 May 2010 16:34:12 +0200 Subject: [PATCH] export, re-export etc as syntax-rules macros * module/ice-9/boot-9.scm (export, re-export, export-syntax) (re-export-syntax): Rewrite as syntax-rules macros. --- module/ice-9/boot-9.scm | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm index 5705ceb0e..35714f7e5 100644 --- a/module/ice-9/boot-9.scm +++ b/module/ice-9/boot-9.scm @@ -3481,23 +3481,31 @@ module '(ice-9 q) '(make-q q-length))}." (module-add! public-i external-name var))))) names))) -(defmacro export names - `(eval-when (eval load compile) - (call-with-deferred-observers - (lambda () - (module-export! (current-module) ',names))))) +(define-syntax export + (syntax-rules () + ((_ name ...) + (eval-when (eval load compile) + (call-with-deferred-observers + (lambda () + (module-export! (current-module) '(name ...)))))))) -(defmacro re-export names - `(eval-when (eval load compile) - (call-with-deferred-observers - (lambda () - (module-re-export! (current-module) ',names))))) +(define-syntax re-export + (syntax-rules () + ((_ name ...) + (eval-when (eval load compile) + (call-with-deferred-observers + (lambda () + (module-re-export! (current-module) '(name ...)))))))) -(defmacro export-syntax names - `(export ,@names)) +(define-syntax export-syntax + (syntax-rules () + ((_ name ...) + (export name ...)))) -(defmacro re-export-syntax names - `(re-export ,@names)) +(define-syntax re-export-syntax + (syntax-rules () + ((_ name ...) + (re-export name ...)))) (define load load-module)