최재승
가입: 2012년 9월 10일 올린 글: 211
|
올려짐: 2015년11월6일 15:15 주제: |
|
|
인용: |
for x=e1 to e2 do e3
에서 e1과 e2가 단순한 값만을 푸시하는 것이 아닌 메모리를 변화시키는 명령이 올 수도 있나요?
예를 들어 write라든가 함수 시퀀스가 나온다든가 하는거요
|
네, e1,e2,e3 모두 임의의 exp 가 올 수 있습니다.
인용: | 그리고 translate에서 임의의 스트링을 사용하여 메모리를 할당해놓고 다쓰면 해제 시킨다든가 하는 메모리 관리는 할 필요 없나요?
예를 들어서 할당 해제 안시켜줄경우 제가 임의로 사용한 변수 이름이 겹쳐서 메모리 할당이 될 수 있는데 이런경우 제일 나중에 할당된 메모리만 접근하나요? |
일단 메모리 할당/해제가 무엇을 의미하시는지 헷갈리는데, 환경(environment)에 이름을 bind/unbind하는 것을 의미하신다고 생각하고 답변드리겠습니다. 원론적인 답변밖에 드릴 수 없을 것 같은데, 스스로 생각하시기에 어떤 메모리/환경 관리가 번역된 프로그램에 필요하시다면 구현하시면 됩니다. 구체적으로 무엇을 구현해야 한다거나 구현 안 해도 된다거나 하는 것을 알려드리는 것은 곤란할 것 같습니다. K--를 번역해서 나온 SM5 프로그램이 같은 일을 하는 프로그램이어야 한다는 원칙만 지켜지면 됩니다.
혹시 K-- 프로그램에서 사용하는 변수 이름과, 번역된 SM5 프로그램이 내부적으로 사용하는 변수 이름이 겹치는 것이 걱정이라면, https://ropas.snu.ac.kr/phpbb/viewtopic.php?t=5128 글의 스펙 보충사항을 확인해 주시기 바랍니다.
조교 드림
최재승 가 2015년11월8일 18:56에 수정함, 총 1 번 수정됨 |
|