summaryrefslogtreecommitdiff
path: root/scheme
diff options
context:
space:
mode:
authormichele.simionato <devnull@localhost>2009-02-09 18:28:58 +0000
committermichele.simionato <devnull@localhost>2009-02-09 18:28:58 +0000
commit6ef489b87a16b77e0db2223a9b13f6164e8d081c (patch)
treebd9104d6cb56fb2e5bb2c0ab5d4c7a09a93448fb /scheme
parente77c70bbfd0ad94b7ac563ab76bed5586c65861c (diff)
downloadmicheles-6ef489b87a16b77e0db2223a9b13f6164e8d081c.tar.gz
Renamed block->local
Diffstat (limited to 'scheme')
-rw-r--r--scheme/sweet-macros.sls20
1 files changed, 11 insertions, 9 deletions
diff --git a/scheme/sweet-macros.sls b/scheme/sweet-macros.sls
index 1967cf2..5818e73 100644
--- a/scheme/sweet-macros.sls
+++ b/scheme/sweet-macros.sls
@@ -4,17 +4,17 @@
;;; Email: michele.simionato@gmail.com
;;; Date: 07-Feb-2009
;;; Licence: BSD
-(export syntax-match def-syntax syntax-expand)
+(export syntax-match def-syntax syntax-expand local)
(import (rnrs))
;; helper macro 1
-(define-syntax block
+(define-syntax local
(lambda (x)
(syntax-case x ()
- ((block expr)
+ ((local expr)
#'expr)
- ((block (let-form name value) (l n v) ... expr)
- #'(let-form ((name value)) (block (l n v) ... expr))))
+ ((local (let-form name value) (l n v) ... expr)
+ #'(let-form ((name value)) (local (l n v) ... expr))))
))
;; helper macro 2
@@ -48,7 +48,7 @@
(guarded-syntax-case () (sub local)
((self (local (let-form name value) ...) (literal ...)
(sub patt skel . rest) ...)
- #'(block (let-form name value) ...
+ #'(local (let-form name value) ...
(guarded-syntax-case ()
(<literals> <patterns> <source> <transformer> literal ...)
((ctx <literals>)
@@ -74,10 +74,12 @@
))
(define-syntax def-syntax
- (syntax-match (extends)
- (sub (def-syntax name (extends parent literal ...) clause ...)
+ (syntax-match (extends local)
+ (sub (def-syntax name (extends parent)
+ (local loc ...) (literal ...)
+ clause ...)
#'(define-syntax name
- (syntax-match (literal ...)
+ (syntax-match (local loc ...) (literal ...)
clause ...
(sub x ((parent <transformer>) #'x)))))
(sub (def-syntax (name . args) skel . rest)