0
는이 전 기능 "을 만들-람다"를 다음과 같이 정의되어 있다고 가정 해 봅시다 :런타임 혀짤배기에서 람다 함수를 만듭니다
(create-lambda 2 3)
그것은 것 :이 같은이 기능을 호출하는 경우
(defun create-lambda(x y)
(lambda(z) (let ((foo (some-other-function z y))) (if (= x foo) T))))
반환 :
는 내가 원하는 것은#<FUNCTION :LAMBDA (Z) (LET ((FOO (SOME-OTHER-FUNCTION Z Y))) (IF (= X FOO) T))>
이 돌아 :
을#<FUNCTION :LAMBDA (Z) (LET ((FOO (SOME-OTHER-FUNCTION Z 3))) (IF (= 2 FOO) T))>
이것이 가능합니까?
'#'와 같은 람다 함수의 출력 형식은 표준화. 이 경우,'x'와'y'의 값은 변경할 수 없기 때문에 (특별한 것으로 전역 적으로 선언되지 않은 한), 관찰 가능한 차이가 없어야합니다. –