이전 주제 보기 :: 다음 주제 보기 |
글쓴이 |
메시지 |
문순원
가입: 2025년 3월 5일 올린 글: 1
|
올려짐: 2025년5월15일 23:00 주제: 숙제 5의 두가지 인터프리터 동작이 다릅니다. |
|
|
코드: | x := 1;
(y := 2;
z := 3);
w := 4;
goto 4
|
코드: | (x := 1;
goto 9);
y := 2;
z := 3;
w := 4
|
이 두 프로그램은 definitional interpreter의 동작이 transitional interpreter와 다릅니다.
첫번째 프로그램에서 동작이 다른 이유는 goto에서 점프가 일어날 때 (y := 2; z := 3) 만 실행하고 이어지는 코드를 실행하지 않기 때문입니다.
두번째 프로그램에서 동작이 다른 이유는 goto에서 w := 4로 점프해 실행한 이후, 남아있던 continuation y := 2; z := 3; w := 4 를 이어서 실행하기 때문입니다. |
|
위로 |
|
 |
이재호 Site Admin
가입: 2022년 3월 6일 올린 글: 209
|
올려짐: 2025년5월15일 23:26 주제: |
|
|
구현식 실행기 특성상 바로 고치기 어려워 보이는 문제인데요 (실행기의 호출 과정에서 자연스럽게 생기는 마저할일(continuation)의 조작 필요), 일단 전이과정 방식의 실행기의 결과가 맞다고 생각하시고 구현하시기 바랍니다.
교수님께 확인 후 다시 답변드리겠습니다. |
|
위로 |
|
 |
이재호 Site Admin
가입: 2022년 3월 6일 올린 글: 209
|
올려짐: 2025년5월16일 17:31 주제: |
|
|
교수님께서 전이과정 방식의 분석기를 구현하는 것으로 하자고 말씀하셨습니다.
감사합니다. |
|
위로 |
|
 |
|