이전 주제 보기 :: 다음 주제 보기 |
글쓴이 |
메시지 |
방정호
가입: 2011년 9월 19일 올린 글: 40
|
올려짐: 2014년10월7일 22:19 주제: 과제3-1번 hw3.ml 파일에 어느정도까지의 수정이 가능한가요? |
|
|
구현해야하는 K 모듈 중 semantics 함수 외에 다른 부분을 수정해도 되는지요?
1. 우선, env_loc 같은 함수가 만들어져 있던데
K 모듈에 새로운 함수를 추가해도 되는건가요?
이 부분은 다른 글에서 확인하였습니다.
2. Env, Mem, Loc 등에 모듈의 구현을 수정해도 되는건지요?
signature는 수정하지 않고, struct 부분에서요.
3. K 모듈내에서 정의하고 있는 type들을 수정해도 되나요?
예를들어,
인용: |
type value =
| Num of int
| Bool of bool
| Unit
| Record of (id -> Loc.t)
type memory = value Mem.t
type env = (id, env_entry) Env.t
and env_entry = Addr of Loc.t | Proc of id list * exp * env
|
같은 것들이요.
아래 4번 질문과는 다른 이유이지만, value 타입의 정의를 바꿔도 되는지 궁금하네요.
4. 사실 이런 것들이 궁금한 이유는 문제 3번 끝에있는 내용 때문인데요.
인용: | 참고로, 만든 실행기에 메모리 소모량을 측정하는 장치를 달고, 프로그램을 돌렸을 때 얼만큼의 메모리를 소모하는 지를 재보자. 메모리 소모가 될 수 있으면 작도록 프로시져를 구현하도록 해 보자. |
이것과 관련되어 어떻게 메모리를 측정하고 구현해야하는지 궁금합니다.
만약 메모리 측정을 위해서 무언가 구현을 해야한다면 위에 언급한 수정내용이 필요할 것 같은데, 다른 방법이 있는것인지도 궁금합니다. |
|
위로 |
|
 |
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2014년10월8일 17:32 주제: |
|
|
우선, 2. 3.에 대해서 답변을 드리자면, hw3.ml은 자유롭게 수정하셔도 되는 것으로 하겠습니다. hw3.ml의 코드를 드리고 implement 할 부분을 지정해 드린 것은 어디까지나 수강생들의 편의를 위한 일이기에, 이 구현을 수정하는 것은 자유입니다.
단, 뼈대 코드로 주어진 다른 코드는 수정하지 말고 구현/테스트하시기 바랍니다. 채점할 때는, 제출하신 hw3.ml 파일을 가지고, 나머지 뼈대 코드와 함께 컴파일하고 실행할 것입니다.
4번 질문하셨듯이, 메모리 소모량의 측정을 위해서는 메모리 모듈의 구현을 수정하는 것이 필요할 것입니다. ocaml이 제공하는 메모리 관리 모듈을 사용하는 방법도 있겠지만, 메모리 모듈의 구현을 수정하는 것을 추천합니다. 참고로 메모리 소모 및 측정은 채점에는 반영되지 않을 것입니다. |
|
위로 |
|
 |
김민석
가입: 2012년 9월 15일 올린 글: 40
|
올려짐: 2014년10월12일 19:50 주제: |
|
|
a
김민석 가 2014년10월12일 23:51에 수정함, 총 1 번 수정됨 |
|
위로 |
|
 |
김민석
가입: 2012년 9월 15일 올린 글: 40
|
올려짐: 2014년10월12일 23:51 주제: |
|
|
밑에 글이랑 모순되는 부분이 있는것 같아서 확인차 다시 질문드려요.
아래 글에서는 시그니쳐 부분은 수정할 수 없고, 모듈만 수정 가능하다고 하셨는데 이 글에서는 자유롭게 수정 가능하다고 하셨는데 어떤게 맞나요? |
|
위로 |
|
 |
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2014년10월12일 23:52 주제: |
|
|
혼란을 드려 죄송합니다.
모듈 타입(시그니처) 부분은 수정하지 마시기 바라며, 모듈 구현 부분만 수정 가능한 것으로 하겠습니다. (사실, 모듈 타입 부분은 수정할 경우 뼈대 코드와 함께 컴파일하는 데 문제가 생길 수 있습니다.) 이것만으로도, 충분히 자유로운 구현이 가능할 것입니다. |
|
위로 |
|
 |
|