lisp-macros

    0

    2답변

    나는 지금 몇 번, LOL의 6.7 절을 읽었으며, 나는 여전히 다음과 같은 것에 대해 내 마음을 감쌀 수 없다. 외부 코드에 대해 이전에 닫혀 있던 바인딩은 이제 효율적으로 컴파일 된 액세서리 코드를 잊어 버린 이후로도 바뀌 었습니다. 바운드 심볼이 기본적으로 클로저 환경에서 포인터로 컴파일되면 이미 컴파일 된 함수에 심볼을 전달할 수 있으며 함수는 어떻

    0

    1답변

    내가 가진 : (defmacro assign (name value) (format t "assigning ~A to ~A~%" `,name `,value)) (defun opcode-call (&rest args) (mapcar (lambda (arg) (if (stringp arg) (let ((var (g

    0

    1답변

    매크로에서 생성 된 함수에 심볼 이름을 어떻게 대체 할 수 있습니까? 나는 여기서 명백한 것을 놓치고 있다고 생각한다. 예를 들어, 나는 (defun fn (var) (symbol-value var)) 같은 서명 기능은 반환 (cl-defmacro mac (pkg) (let ( ;; Define some variables (

    0

    1답변

    lisp 매크로로 작성된 defun에서 let-binding을 조건부로 제거 할 수 있습니까? 여기에 결과 함수에서 첫 번째 let-bound 변수를 제거하려고하지만 오류가 발생하는 nil을 let 바인딩에 붙이는 문제가 발생합니다. 예를 들어, 결과 함수는 let 또는 let*을 사용하며 arg에 따라 첫 번째 변수 할당을 제거해야합니다. 그러나 문제를