신기정
가입: 2009년 9월 15일 올린 글: 83
|
올려짐: 2010년10월24일 14:43 주제: 숙제 5-2와 관련해서. |
|
|
숙제 5-2와 관련해서 헷갈리는 부분이 있습니다.
1.
M0은 적극적인 프로그래밍 언어라고 나와있습니다.
만약 주어진 M0 언어 (fn id => e1) e2 를 (\id (encode e1)) (encode e2) 의 람다식으로 번역한다면,
이 것을 normal-order reduction 했을 때
M0의 semantic대로(즉 적극적인 방식으로) 수행되는 것이 아니니까
잘못된 것인가요?
2.
문제에서
인용: | Exercise 1에서 만든 reduce로 실행시켜서 언래 M0 프로그램의 결과와 같은 결과를 내놔야 한다. |
이 말은 저런 경우를 모두 고려해서, normal-order reduction을 하더라도 같은 semantic(적극적인 계산)을 보장할 수 있도록 encoding 해야 한다는 것을 의미하는 건가요?
3.
이도 저도 아니면, 결과 람다식이 적극적인 방식으로 계산(reduction)된다고 가정하고 번역하되, 만약 적극적인 방식과 소극적인 방식으로 reduction을 했을 때 결과에 차이가 있는 경우는
M0을 수행했을 때와, M0에서 번역한 것을 Exercise 1의 reduce로 수행했을 때와 계산 결과가 다를 수 있다. 이게 맞는 건가요? |
|