Ho scritto macro Common Lisp, quindi le macro di R5Rs di Scheme sono un po 'innaturali per me. Io penso ho avuto l'idea, solo che io non capisco come si potrebbe usare modelli vettoriali in sintassi-regole:Come vengono utilizzati i pattern vettoriali nelle regole della sintassi?
(define-syntax mac
(syntax-rules()
((maC#(a b c d))
(let()
(display a)
(newline)
(display d)
(newline)))))
(expand '(maC#(1 2 3 4))) ;; Chicken's expand-full extension shows macroexpansion
=> (let746() (display747 1) (newline748) (display747 4) (newline748))
Io non vedo come mi piacerebbe utilizzare una macro che richiede i suoi argomenti essere scritto come un vettore:
(maC#(1 2 3 4))
=>
1
4
Esiste un tipo di tecnica che utilizza tali schemi?
Grazie!
Grazie! Ora ha molto più senso! :-) – Jay