mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-21 14:49:18 +02:00
need to quote literals in syntax-rules
This commit is contained in:
parent
78de2d1394
commit
3f98dd5035
1 changed files with 4 additions and 2 deletions
|
@ -36,7 +36,7 @@
|
|||
_let (list (list v x))
|
||||
(cond
|
||||
((symbol? p)
|
||||
(if (memq p lits)
|
||||
(if (memq p (list _quote lits))
|
||||
(list _and (list _eq? v p) (k vars))
|
||||
(list _let (list (list p v)) (k (cons (cons p dim) vars)))))
|
||||
((ellipse? p)
|
||||
|
@ -104,7 +104,9 @@
|
|||
(cdr x)))
|
||||
(define (all-vars x dim)
|
||||
(let lp ((x x) (dim dim) (vars '()))
|
||||
(cond ((symbol? x) (if (memq x lits) vars (cons (cons x dim) vars)))
|
||||
(cond ((symbol? x) (if (memq x (list _quote lits))
|
||||
vars
|
||||
(cons (cons x dim) vars)))
|
||||
((ellipse? x) (lp (car x) (+ dim 1) vars))
|
||||
((pair? x) (lp (car x) dim (lp (cdr x) dim vars)))
|
||||
((vector? x) (lp (vector->list x) dim vars))
|
||||
|
|
Loading…
Add table
Reference in a new issue