 |
|
| 이전 주제 보기 :: 다음 주제 보기 |
| 글쓴이 |
메시지 |
김진현

가입: 2005년 9월 20일 올린 글: 91 위치: SNUCSE OPT. lab.
|
올려짐: 2005년9월30일 13:43 주제: 2번 숙제, 2번 문제에 대한 질문입니다. |
|
|
1) 혹시 파서 같은 것들은 제공되지 않나요?
K- 로 쓰여진 프로그램을 직접 돌려볼 수 있도록 도와줄.
2) 돌렷 은 `메모리 * 환경 * 프로그램 -> 값' 의 타입을 갖는 함수입니다.
우리가 다룰 언어 K- 는 Statement 와 Expression 을 구별하지 않습니다.
즉, 프로그램을 돌려보면 값이 얻어질 수도 있고,
변화된 메모리를 얻을 수도 있습니다.
혹시 돌렷은 `메모리 * 환경 * 프로그램 -> 값 * 환경' 은 아닌가요?
아니면 돌렷2 가 `메모리 * 환경 * 프로그램 -> 값 * 환경' 이고,
돌렷은 이 결과를 받아 `값' 만을 리턴하는 함수로 구현하는 것인가요?
3) 값은 정수이거나 부울이거나 () 입니다.
값이 타입은 정의되어 있지 않고 직접 정의하도록 되어 있습니다.
물론 `type 값 = int | bool | unit' 과 같은 타입은 불가능한데,
이를 해결하기 위한 방법이 매우 많습니다.
exp 를 흉내낸 `NUM of int | TRUE | FALSE | UNIT' 이나,
`INT of int | BOOL of bool | UNIT of unit' 등등등.
이 경우 혹시 채점의 불편함-_- 때문에 값 에 대한 정의가 있지 않을까 싶은데,
혹시 이 부분에 대해서는 정해진 바가 없나요?
물론 주어진 스펙대로 숙제를 해도 전혀 지장은 없겠지만,
이러한 부분들이 있다면 조금 더 자연스럽지[?] 않을까 하여 질문드려 봅니다. _________________ The kingdom of heaven has been forcefully advancing, and forceful men lay hold of it. |
|
| 위로 |
|
 |
김덕환
가입: 2005년 8월 29일 올린 글: 190
|
올려짐: 2005년9월30일 16:15 주제: Re: 2번 숙제, 2번 문제에 대한 질문입니다. |
|
|
| 김진현 씀: |
1) 혹시 파서 같은 것들은 제공되지 않나요?
K- 로 쓰여진 프로그램을 직접 돌려볼 수 있도록 도와줄.
|
학생들에게 도움이 되도록 파서 및 메모리와 환경을 구현한 모듈을 제공할 예정입니다. 빠르면 오늘 저녁, 늦어도 내일 오전까지는 제공할 수 있을 듯합니다.
물론, 반드시 제공되는 것을 사용할 필요는 없으며, 개인적으로 직접 구현하신 것을 사용하셔도 됩니다.
| 김진현 씀: |
2) 돌렷 은 `메모리 * 환경 * 프로그램 -> 값' 의 타입을 갖는 함수입니다.
우리가 다룰 언어 K- 는 Statement 와 Expression 을 구별하지 않습니다.
즉, 프로그램을 돌려보면 값이 얻어질 수도 있고,
변화된 메모리를 얻을 수도 있습니다.
혹시 돌렷은 `메모리 * 환경 * 프로그램 -> 값 * 환경' 은 아닌가요?
아니면 돌렷2 가 `메모리 * 환경 * 프로그램 -> 값 * 환경' 이고,
돌렷은 이 결과를 받아 `값' 만을 리턴하는 함수로 구현하는 것인가요?
|
돌렷2를 만드시면 됩니다. 그런데, 돌렷2의 리턴 타입이 '값 * 환경'이 아니라 '값 * 메모리'가 되어야 하지 않을까요?
| 김진현 씀: |
3) 값은 정수이거나 부울이거나 () 입니다.
값이 타입은 정의되어 있지 않고 직접 정의하도록 되어 있습니다.
물론 `type 값 = int | bool | unit' 과 같은 타입은 불가능한데,
이를 해결하기 위한 방법이 매우 많습니다.
exp 를 흉내낸 `NUM of int | TRUE | FALSE | UNIT' 이나,
`INT of int | BOOL of bool | UNIT of unit' 등등등.
이 경우 혹시 채점의 불편함-_- 때문에 값 에 대한 정의가 있지 않을까 싶은데,
혹시 이 부분에 대해서는 정해진 바가 없나요?
물론 주어진 스펙대로 숙제를 해도 전혀 지장은 없겠지만,
이러한 부분들이 있다면 조금 더 자연스럽지[?] 않을까 하여 질문드려 봅니다. |
인터페이스(signature)를 준수한다면, 구현 세부 사항에 대해서는 자유롭게 결정하실 수 있습니다. 문제에 다음처럼 나와있습니다.
| 인용: |
이 때 프로그램은 실행 중에 I/O를 하면서 프로그램이 하는 일을 바깥 세상에 드러내게 되겠지요.
|
임의의 입력에 대해 언어 의미 정의에 따라 정확하게 출력해준다면 그 실행기는 바깥 세상 사람에게는 올바른 실행기입니다. 채점 기준도 입력에 대해 올바른 결과를 내주는 지입니다. 효율성은 고려하지 않습니다. 게다가 특별히 비효율적으로 구현하기도 어려울 듯합니다.  _________________ TheyAreAsSmartAsYouAre
김덕환 가 2005년9월30일 20:26에 수정함, 총 2 번 수정됨 |
|
| 위로 |
|
 |
김진현

가입: 2005년 9월 20일 올린 글: 91 위치: SNUCSE OPT. lab.
|
올려짐: 2005년9월30일 16:33 주제: |
|
|
답변 감사드립니다
예, 돌렷2 는 `값 * 메모리' 를 리턴해야 하는데 그만 실수했네요 :$
환경, 혹은 메모리에 대한 사족.
환경과 메모리를, 수업시간에 배웠듯 함수로 하였을 때,
빈 환경과 빈 메모리를 어떻게 해야 할 지 헷갈렸는데,
아무 것도 하지 않는 함수로 만들면 되겠더군요-_-;
(물론 예외 발생 처리가 필요하겠지만요) _________________ The kingdom of heaven has been forcefully advancing, and forceful men lay hold of it. |
|
| 위로 |
|
 |
|
|
새로운 주제를 올릴 수 없습니다 답글을 올릴 수 없습니다 주제를 수정할 수 없습니다 올린 글을 삭제할 수 없습니다 투표를 할 수 없습니다
|
Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group Translated by kss & drssay
|