Plaster
New
List
Login
common-lisp
default
phoe
2022.01.19 16:07:37
[1]> (defmacro foo (&environment env) (print env) nil) FOO [2]> (foo) #(NIL NIL) NIL [3]> (let ((x 42)) (macrolet ((y (z) `(+ ,z ,z))) (foo))) #(#(X 42 NIL) #(Y #<MACRO #<FUNCTION Y (SYSTEM::<MACRO-FORM> SYSTEM::<ENV-ARG>) (DECLARE (CONS SYSTEM::<MACRO-FORM>)) (DECLARE (IGNORE SYSTEM::<ENV-ARG>)) (IF (NOT (SYSTEM::LIST-LENGTH-IN-BOUNDS-P SYSTEM::<MACRO-FORM> 2 2 NIL)) (SYSTEM::MACRO-CALL-ERROR SYSTEM::<MACRO-FORM>) (LET* ((Z (CADR SYSTEM::<MACRO-FORM>))) (BLOCK Y `(+ ,Z ,Z))))> NIL> NIL)) NIL
Raw
Annotate
Repaste