diff options
Diffstat (limited to 'monad/core.scm')
-rw-r--r-- | monad/core.scm | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/monad/core.scm b/monad/core.scm index 1e1252e..05d1a59 100644 --- a/monad/core.scm +++ b/monad/core.scm @@ -1,6 +1,6 @@ (define-module (monad core) #:use-module (srfi srfi-9) - #:export (make-monad with-monad: monad? monad-bind monad-return)) + #:export (make-monad with-monad monad? monad-bind monad-return)) (define-record-type monad (make-monad bind return) @@ -10,13 +10,13 @@ (define-syntax-parameter >>= (lambda (s) - (syntax-violation '>>= ">>= (bind) used outside of 'with-monad:'" s))) + (syntax-violation '>>= ">>= (bind) used outside of 'with-monad'" s))) (define-syntax-parameter return (lambda (s) - (syntax-violation 'return "return used outside of 'with-monad:'" s))) + (syntax-violation 'return "return used outside of 'with-monad'" s))) -(define-syntax with-monad: +(define-syntax with-monad (lambda (x) (syntax-case x (<-) ((_ monad action) @@ -28,10 +28,10 @@ (return (identifier-syntax (monad-return monad)))) (>>= action (lambda (res) - (with-monad: monad exp ...))))) + (with-monad monad exp ...))))) ((_ monad action exp ...) #'(syntax-parameterize ((>>= (identifier-syntax (monad-bind monad))) (return (identifier-syntax (monad-return monad)))) (>>= action (lambda (_) - (with-monad: monad exp ...)))))))) + (with-monad monad exp ...)))))))) |