mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-07-06 20:56:38 +02:00
fixing binding for ellipsis patterns with dotted tails
This commit is contained in:
parent
1831d33b26
commit
4722703d64
1 changed files with 5 additions and 3 deletions
|
@ -663,8 +663,10 @@
|
|||
(,_i (,_- ,_len ,len))
|
||||
(,_res (,_quote ())))
|
||||
(,_if (,_>= 0 ,_i)
|
||||
,(lp `(,@(cdr (cdr p)) ,(car p) ,(car (cdr p)))
|
||||
`(,_append ,_ls (,_reverse ,_res))
|
||||
,(lp `(,(cddr p) (,(car p) ,(car (cdr p))))
|
||||
`(,_cons ,_ls
|
||||
(,_cons (,_reverse ,_res)
|
||||
(,_quote ())))
|
||||
dim
|
||||
vars
|
||||
k)
|
||||
|
@ -739,7 +741,7 @@
|
|||
(if (any (lambda (lit) (compare x lit)) lits)
|
||||
vars
|
||||
(cons (cons x dim) vars)))
|
||||
((ellipsis? x) (lp (car x) (+ dim 1) vars))
|
||||
((ellipsis? x) (lp (car x) (+ dim 1) (lp (cddr x) dim vars)))
|
||||
((pair? x) (lp (car x) dim (lp (cdr x) dim vars)))
|
||||
((vector? x) (lp (vector->list x) dim vars))
|
||||
(else vars))))
|
||||
|
|
Loading…
Add table
Reference in a new issue