diff options
Diffstat (limited to 'module/ice-9/psyntax.scm')
-rw-r--r-- | module/ice-9/psyntax.scm | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/module/ice-9/psyntax.scm b/module/ice-9/psyntax.scm index 760f8252f..2cc6386e9 100644 --- a/module/ice-9/psyntax.scm +++ b/module/ice-9/psyntax.scm @@ -608,22 +608,15 @@ ;; syntax object wraps - ;; <wrap> ::= ((<mark> ...) . (<subst> ...)) - ;; <subst> ::= <shift> | <subs> - ;; <subs> ::= #(<old name> <label> (<mark> ...)) - ;; <shift> ::= positive fixnum + ;; <wrap> ::= ((<mark> ...) . (<subst> ...)) + ;; <subst> ::= shift | <subs> + ;; <subs> ::= #(ribcage #(<sym> ...) #(<mark> ...) #(<label> ...)) + ;; | #(ribcage (<sym> ...) (<mark> ...) (<label> ...)) (define-syntax make-wrap (identifier-syntax cons)) (define-syntax wrap-marks (identifier-syntax car)) (define-syntax wrap-subst (identifier-syntax cdr)) - (define-syntax subst-rename? (identifier-syntax vector?)) - (define-syntax-rule (rename-old x) (vector-ref x 0)) - (define-syntax-rule (rename-new x) (vector-ref x 1)) - (define-syntax-rule (rename-marks x) (vector-ref x 2)) - (define-syntax-rule (make-rename old new marks) - (vector old new marks)) - ;; labels must be comparable with "eq?", have read-write invariance, ;; and distinct from symbols. (define (gen-label) @@ -2903,6 +2896,9 @@ (binding (car bindings))) #'(let (binding) body)))))))) +;; This definition of 'do' is never used, as it is immediately +;; replaced by the definition in boot-9.scm. +#; (define-syntax do (lambda (orig-x) (syntax-case orig-x () @@ -3076,6 +3072,10 @@ "expression not valid outside of quasiquote" x))) +;; This definition of 'case' is never used, as it is immediately +;; replaced by the definition in boot-9.scm. This version lacks +;; R7RS-mandated support for '=>'. +#; (define-syntax case (lambda (x) (syntax-case x () |