* module/ice-9/boot-9.scm (define-public): Remove currying functionality.
* module/ice-9/curried-definitions.scm (define-public): New export.
(define-syntax define-public
(syntax-rules ()
((_ (name . args) . body)
- (define-public name (lambda args . body)))
+ (begin
+ (define name (lambda args . body))
+ (export name)))
((_ name val)
(begin
(define name val)
(define-module (ice-9 curried-definitions)
#:replace ((cdefine . define)
- (cdefine* . define*)))
+ (cdefine* . define*)
+ define-public))
(define-syntax cdefine
(syntax-rules ()
(lambda* rest body body* ...)))
((_ . rest)
(define* . rest))))
+
+(define-syntax define-public
+ (syntax-rules ()
+ ((_ (name . args) . body)
+ (begin
+ (cdefine (name . args) . body)
+ (export name)))
+ ((_ name val)
+ (begin
+ (define name val)
+ (export name)))))