double은 다음과 같이 정의된다.
이제 (double (double double))은 총 4번의 double을 다시 한번 더 반복하므로 8번의 double이 생긴다.
마지막으로 inc를 다시 반복하므로 총 16번의 double이 생긴다.

(define (double f)(double double)은 이전에 double을 두번더 반복하므로 총 4번의 double이 생긴다.
(lambda (x) (f (f x))))
이제 (double (double double))은 총 4번의 double을 다시 한번 더 반복하므로 8번의 double이 생긴다.
마지막으로 inc를 다시 반복하므로 총 16번의 double이 생긴다.
> (((double (double double)) inc) 5)
21
/>

댓글 없음:
댓글 쓰기