게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

Stage 1에서 QUOTE처리?

 
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2005)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
공순호



가입: 2005년 9월 29일
올린 글: 363
위치: 302동 312-2호

올리기올려짐: 2005년10월27일 13:24    주제: Stage 1에서 QUOTE처리? 인용과 함께 답변

Semantic 문서에 보면

LIFT, COMMA, EVAL에 대해서는

Stage 1에서의 Semantics가 정의되어 있는데

QUOTE에 관해서는 없는 것으로 보이네요.

어떻게 처리하는 것이 좋을까요?


LIFT나 COMMA 처럼 처리하는 것이 자연스러울 것 같은데.


혹시 나와있는데 제가 못보고 있는건 아닐지 걱정도 됩니다.;;
위로
사용자 정보 보기 비밀 메시지 보내기 글 올린이의 웹사이트 방문
조성문



가입: 2005년 10월 21일
올린 글: 5

올리기올려짐: 2005년10월27일 13:59    주제: Re: Stage 1에서 QUOTE처리? 인용과 함께 답변

공순호 씀:
LIFT, COMMA, EVAL에 대해서는

Stage 1에서의 Semantics가 정의되어 있는데

QUOTE에 관해서는 없는 것으로 보이네요.



stage 0 에서 stage 1로 올라갈 수 있는 것은 QUOTE 밖에 없습니다.
따라서 stage 1로 올라갈때는 QUOTE 가 벗겨져서 올라가게 되죠.

여기서, 만일 QUOTE 안에 QUOTE를 허용하게 된다면, 공순호님이 말씀하신 것처럼 stage 1에서 QUOTE의 정의가 필요합니다. 하지만, 이번 숙제에서 staged programming은 차원(stage)를 0과 1만 가정했기 때문에 QUOTE 속에 QUOTE를 중복해서 사용하는 것은 허용되면 안될 것 같습니다. 따라서 stage 1에서 QUOTE의 semantic은 필요없겠죠.
위로
사용자 정보 보기 비밀 메시지 보내기
공순호



가입: 2005년 9월 29일
올린 글: 363
위치: 302동 312-2호

올리기올려짐: 2005년10월27일 16:07    주제: 인용과 함께 답변

인용:
stage 0 에서 stage 1로 올라갈 수 있는 것은 QUOTE 밖에 없습니다.
따라서 stage 1로 올라갈때는 QUOTE 가 벗겨져서 올라가게 되죠.




코드:

let
   x := `(`(3))
in
   write eval(eval(x))
end


와 같은 코드를 통해서 QUOTE안에 QUOTE가 들어가게 할 수 있는데요.

파싱도 되고요 Crying or Very sad


조교님, 어떻게 해야하는거죠?
위로
사용자 정보 보기 비밀 메시지 보내기 글 올린이의 웹사이트 방문
조성문



가입: 2005년 10월 21일
올린 글: 5

올리기올려짐: 2005년10월27일 17:39    주제: 인용과 함께 답변

코드:

let
   x := `(`(3))
in
   write eval(eval(x))
end


저렇게 들어오면, 에러처리를 해야하지 않을까요 ?
즉, stage1 에서 구현되지 않은 연산이라던지, QUOTE를 허용하지 않던지 해서요.

exception 1.StagedK.Error"QUOTE is not permitted in stage 1.")

조교님, 명쾌한 답변을 부탁드림다.
위로
사용자 정보 보기 비밀 메시지 보내기
김덕환



가입: 2005년 8월 29일
올린 글: 190

올리기올려짐: 2005년10월27일 18:30    주제: 인용과 함께 답변

공순호 씀:
코드:

let
   x := `(`(3))
in
   write eval(eval(x))
end


와 같은 코드를 통해서 QUOTE안에 QUOTE가 들어가게 할 수 있는데요.

파싱도 되고요 Crying or Very sad


파싱은 코드가 제대로 생겼는지만 검사하게 됩니다. 파싱되었다고 잘 돌아가야 한다면 세상에 존재하는 모든 컴파일된 C 프로그램들은 세그폴트도 없고, 버스 에러도 없이 잘 돌아갔어야 할 겁니다. Wink

위의 수식에서 x를 초기화하기 위해 `(`(3))을 계산하려고 하면 의미가 정의되지 않기 때문에 적절한 에러를 발생시켜야 합니다.
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2005) 시간대: GMT + 9 시간(한국)
페이지 11

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay