2017-12-04 6 views
0

저는 Lisp Scheme을 처음 사용합니다. https://github.com/corypisano/CS314/blob/master/Project2/decode.ssLisp 스키마 : 람다로 보냄

송출이 : 나는 코드 여기

(define Gen-Decoder-A 
     (lambda (p) 
     (define check-decode 
      (lambda (n) 
      (num-valid-words (encode-p p (encode-n n)))) 
     ) 
     (let ((decode-compare (map check-decode abc-nums))) 
      (encode-n (get-position (apply max decode-compare) decode-compare))) 
     ((lambda 
     ) 
    ) 

전체 코드 링크입니다 "하자"괜찮나 내가 람다 여기

로 교체 할 사용이 코드를 건너 왔어요 lambda로 다시 쓸 수있는 let 변수 -에 겐 디코더-A 는 letlambda 단지 문법 설탕 나를 람다

답변

2

에하자 변경 도움말 lambda을 호출 할 때 바인딩되는 매개 변수 예를 들어,이 식 :

(let ((decode-compare (map check-decode abc-nums))) 
    (encode-n (get-position (apply max decode-compare) decode-compare))) 

이하는 것과 같습니다

((lambda (decode-compare) 
    (encode-n (get-position (apply max decode-compare) decode-compare))) 
(map check-decode abc-nums))