| ...at least partially? I find (withs (do 1 re 2 mi 3) (+ do re mi)) ==> 6
whereas according to the definition (mac withs (parms . body)
(if (no parms)
`(do ,@body)
`(let ,(car parms) ,(cadr parms)
(withs ,(cddr parms) ,@body))))
the above should be equivalent to (let do 1
(let re 2
(let mi 3
(do
(+ do re mi)))))
which should fail, shouldn't it? At least defmacro would fail, wouldn't it? What is going on? |