이 문제는 환경 계산법(The Environment Model of Evaluation)으로
1.2.1절에서 맞바꿈 계산법(Substitution Model)을 이용하여 파헤친 것과
다르게 바라보는 문제입니다.
예제 역시 (factorial 6)으로 동일합니다.
먼저 재귀(recursive)로 만든 프로시저입니다.
(그림을 클릭하시면 본 크기의 그림을 볼 수 있습니다.)
새롭게 환경이 계속 만들어지면서 진행이 되는군요.^^
다음으로 반복(iterative) 프로시저입니다.
반복은 족금 더 복잡합니다.
먼저 factorial 프로시저를 수행한 후에 fact-iter 프로시저를 수행합니다.
그리고 해당 프로시저는 총 7번을 수행합니다.
맞바꿈 계산법으로 살펴본 것과는 다릅니다.


(SICP 43, 44쪽)
특히 반복은 늘어나지 않았지만, 환경 계산법에서는 그 환경이 계속 늘어났습니다.
왜냐하면 그만큼 fact-iter 프로시저를 호출하였기 때문입니다.
이에 대해 5.4절에서 다시 살펴본다고 하는군요.
5.4절이라... 언제 볼 수 있을런지...~_~
참조
해럴드 애빌슨, 김재우 역, <컴퓨터 프로그램의 구조와 해석>, 인사이트, 2007, pp. 317
"in OCW" 카테고리의 다른 글
- SICP Exercise 연습문제 3.12 (0)2008/03/09
- SICP Exercise 연습문제 3.11 (0)2008/03/09
- SICP Exercise 연습문제 3.10 (0)2008/03/09
- SICP Exercise 연습문제 3.9 (0)2008/03/08
- SICP Exercise 연습문제 3.8 (2)2008/03/08
- SICP Exercise 연습문제 3.7 (0)2008/03/08
- SICP Exercise 연습문제 3.6 (0)2008/03/08
글에 잘못된 점, 다른 점, 부족한 점이 있다면 지적해주세요.
댓글, 트랙백, 메일 모두 고맙습니다.











댓글을 달아 주세요