Attempt to improve readability of syntax-template-transformer uses

Lipstick on a pig, but seems to be the best option available
This commit is contained in:
Daphne Preston-Kendal 2022-02-04 10:33:37 +01:00
parent aef1a1b358
commit d6b13db503

View file

@ -1097,7 +1097,7 @@
(lits (if ellipsis-specified? (car (cddr expr)) (cadr expr))) (lits (if ellipsis-specified? (car (cddr expr)) (cadr expr)))
(forms (if ellipsis-specified? (cdr (cddr expr)) (cddr expr)))) (forms (if ellipsis-specified? (cdr (cddr expr)) (cddr expr))))
(syntax-template-transformer rename compare (syntax-template-transformer rename compare
#f #f ; not id-syntax?
ellipsis ellipsis-specified? ellipsis ellipsis-specified?
lits forms)))))) lits forms))))))
@ -1135,14 +1135,17 @@
_make-variable-transformer _make-variable-transformer
(syntax-template-transformer (syntax-template-transformer
rename compare rename compare
#t #t ; id-syntax?
ellipsis ellipsis-specified? ellipsis ellipsis-specified?
(list (caar (cadr forms))) (list ; lits, i.e. (set!)
(list (cadr forms) (caar (cadr forms)))
(list (list ; forms
(cadr forms) ; set! form
(list ; application form
(cons (caar forms) _o) (cons (caar forms) _o)
(cons (cadr (car forms)) _o)) (cons (cadr (car forms)) _o))
(car forms)))))))))))) (car forms)) ; bare identifier form
))))))))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; let(rec)-syntax and datum->syntax ;; let(rec)-syntax and datum->syntax